Patent attributes
A method implemented by a computer with a processor and a memory storing instructions executed by the processor includes receiving a query with a search region and a predicate. The search region is mapped to a set of blocks. For each block in the set of blocks, ellipsoidal geographic coordinates of the search region are transformed to flat coordinates. Results are retrieved from a primary index when the block does not contain a boundary of the search region. Results are retrieved from a secondary index when the block does contain a boundary of the search region. Retrieving results from the secondary index includes processing the boundary and the predicate against the secondary index.