Patent ID: 7444343

Claim:
A computing device for generating an index for indexing objects based on geographic locations and keywords, comprising: a central processing unit; a memory; a component that identifies values of attributes of objects, the attributes including geographic locations and keywords, the geographic locations being rectangular areas represented using vector-based representations associated with objects and an R*-tree-based index of geographic locations; a component that generates a hybrid index that indexes objects by geographic locations and keywords, the hybrid index having a primary index that maps each value of a first attribute of the geographic location attribute and the keyword attribute to an associated secondary index that maps values of a second attribute of the geographic location attribute and the keyword attribute to objects that have the indexed value of the first attribute and the indexed value of the second attribute, wherein when the hybrid index maps geographic locations and keywords combinations to objects associated with the combination, wherein when an object is associated with multiple geographic locations, the hybrid index maps to a minimum bounding rectangle of the rectangular areas of the geographic locations; a component that receives a query that includes a location query value and a keyword query value; and a component that identifies objects for a search result for the query by using the primary index to identify a secondary index associated with a query value of the query of the first attribute and uses the identified secondary index to identify objects associated with a query value of the query of the second attribute, wherein the identified object have values associated with the location query value and the keyword query value.