IP Library › Granted Patent US 7,860,891
Granted Patent B2
US 7,860,891 · App. 11/255,296 · Granted Dec 28, 2010

Reducing index size for multi-level grid indexes

Assignee: International Business Machines Corporation
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,860,891
App. No.
11/255,296
Granted
Dec 28, 2010
Kind
B2
Abstract

Techniques of querying an index of first objects comprised of a plurality of index entries and a pool of second objects are provided. The techniques include evaluating the index of the first objects to produce a group of one or more possible candidates based on whether one or more index entries of the first objects satisfy a query, adding second objects from the pool to said group of possible candidates to produce an interim group of possible candidates, filtering the interim group of possible candidates by comparing approximations of the candidates of the interim group with the query to produce filtered candidate objects, and determining if the filtered candidate objects satisfy the query by comparing the first and second objects corresponding to the filtered candidate objects with the query.

Claims (31)

1. A computer-implemented method of querying an index of first objects comprised of a plurality of cells index entries and a pool of second objects, the method comprising:

evaluating the index of the first objects to produce a group of one or more candidates based on whether one or more index entries of the first objects satisfy cells designated in a query that respective first objects in the index overlap;

adding second objects from the pool to said group of candidates to produce an interim group of candidates;

filtering the interim group of candidates by comparing the query with approximations of the candidates of the interim group with the query to produce filtered candidate objects;

determining if the filtered candidate objects satisfy the query by comparing the first and second objects corresponding to the filtered candidate objects with the query; and

in response to determining that the filtered candidate objects satisfy the query, returning a result.

2. The computer-implemented method of claim 1 , wherein the index is a grid index comprised of a plurality of grid cells, the first and second objects are geometric shapes, and the second objects are larger than the first objects.

3. The computer-implemented method of claim 2 , wherein all geometric shapes from the pool are added to said group of candidates to produce the interim group of candidates.

4. The computer-implemented method of claim 2 , wherein the approximations of the candidate objects are minimum bounding rectangles of the geometric shapes corresponding to the candidate objects.

5. The computer-implemented method of claim 4 , wherein said determining if the filtered candidate objects satisfy the query includes comparing the geometric shapes corresponding to the filtered candidate objects with a query area specified in the query.

6. A computer-readable storage medium storing a computer program for querying an index of first objects comprised of a plurality of cells and a pool of second objects, the computer program having program instructions, that, when executed by a processor of a computer perform:

evaluating the index of the first objects to produce a group of one or more candidates based on whether one or more index entries of the first objects satisfy cells designated in a query that respective first objects in the index overlap;

adding second objects from the pool to said group of candidates to produce an interim group of candidates;

filtering the interim group of candidates by comparing the query with approximations of the candidates of the interim group with the query to produce filtered candidate objects;

determining if the filtered candidate objects satisfy the query by comparing the first and second objects corresponding to the filtered candidate objects with the query; and

in response to determining that the filtered candidate objects satisfy the query, returning a result.

7. The computer-readable storage medium of claim 6 , wherein the index is a grid index comprised of a plurality of grid cells, the first and second objects are geometric shapes, and the second objects are larger than the first objects.

8. The computer-readable storage medium of claim 7 , wherein all geometric shapes from the pool are added to said group of candidates to produce the interim group of candidates.

9. The computer-readable storage medium of claim 7 , wherein the approximations of the candidate objects are minimum bounding rectangles of the geometric shapes corresponding to the candidate objects.

10. The computer-readable storage medium of claim 9 , wherein said determining if the filtered candidate objects satisfy the query includes comparing the geometric shapes corresponding to the filtered candidate objects with a query area specified in the query.

11. A computer system for querying an index of first objects comprised of a plurality of cells index entries and a pool of second objects, comprising:

a processor;

a storage medium;

means for evaluating the index of the first objects to produce a group of one or more candidates based on whether one or more index entries of the first objects satisfy cells designated in a query that respective first objects in the index overlap;

means for adding second objects from the pool to said group of candidates to produce an interim group of candidates;

means for filtering the interim group of candidates by comparing the query with approximations of the candidates of the interim group with the query to produce filtered candidate objects;

means for determining if the filtered candidate objects satisfy the query by comparing the first and second objects corresponding to the filtered candidate objects with the query; and in response to determining that the filtered candidate objects satisfy the query, returning a result.

12. The computer system of claim 11 , wherein the index is a grid index comprised of a plurality of grid cells, the first and second objects are geometric shapes, and the second objects are larger than the first objects.

13. The computer system of claim 12 , wherein all geometric shapes from the pool are added to said group of candidates to produce the interim group of candidates.

14. The computer system of claim 12 , wherein the approximations of the candidate objects are minimum bounding rectangles of the geometric shapes corresponding to the candidate objects.

15. The computer system method of claim 14 , wherein said determining if the filtered candidate objects satisfy the query includes comparing the geometric shapes corresponding to the filtered candidate objects with a query area specified in the query.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 26, 2016
From: CORAL BAY INNOVATIONS, LLC
To: HULU, LLC
Reel/Frame 038730/0001 →
Continuity (2)
Division 1014191900 · May 10, 2002
Related Publication 20060041551A1 · Feb 23, 2006