LIDAR model with hybrid-columnar format and no indexes for spatial searches
First Claim
1. A method for querying a database having a table containing point spatial data, the method comprising:
- receiving a user request specifying a query window for point spatial data contained within the query window;
generating one or more tiles that cover the query window;
computing extents of the one or more tiles;
generating a query for determining point spatial data in the table contained within the one or more tiles using the extents of the one or more tiles, said query comprising predicate clauses within a WHERE clause, said predicate clauses comprising, for each extent of said extents, a respective predicate clause specifying one or more conditions based on said each extent; and
computing the query, wherein computing the query includes, for each predicate clause of said predicate clauses;
sending a respective set of smart scan requests to an enhanced storage device for execution to cause said enhanced storage device to scan for rows that satisfy the one or more conditions of said each predicate clause, andfrom the enhanced storage device, receiving resultant rows returned for the respective set of smart scans.
1 Assignment
0 Petitions
Accused Products
Abstract
A method and apparatus for querying a database table containing point spatial data and without indexes is provided. A request for point spatial data in the table includes a query window provided by the user and describing an area of interest in which the user desires the point spatial data contained therein. The query window is tiled to create interior tiles and boundary tiles. A first query is formed to determine the point spatial data contained in the interior tiles. A second query is formed to determine the point spatial data contained within the boundary tiles and also within the query window. The second query includes a function that tests to determine whether the point spatial data within a boundary tile also lies within the query window. The first and second queries are executed in part on an enhanced data storage device and the results joined and returned to the user in answer to the request.
-
Citations
20 Claims
-
1. A method for querying a database having a table containing point spatial data, the method comprising:
-
receiving a user request specifying a query window for point spatial data contained within the query window; generating one or more tiles that cover the query window; computing extents of the one or more tiles; generating a query for determining point spatial data in the table contained within the one or more tiles using the extents of the one or more tiles, said query comprising predicate clauses within a WHERE clause, said predicate clauses comprising, for each extent of said extents, a respective predicate clause specifying one or more conditions based on said each extent; and computing the query, wherein computing the query includes, for each predicate clause of said predicate clauses; sending a respective set of smart scan requests to an enhanced storage device for execution to cause said enhanced storage device to scan for rows that satisfy the one or more conditions of said each predicate clause, and from the enhanced storage device, receiving resultant rows returned for the respective set of smart scans. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. One or more non-transitory storage media storing instructions for querying a database having a table containing point spatial data, said instructions, which, when executed by one or more computing devices, cause:
-
receiving a user request specifying a query window for point spatial data contained within the query window; generating one or more tiles that cover the query window; computing extents of the one or more tiles; generating a query for determining point spatial data in the table contained within the one or more tiles using the extents of the one or more tiles, said query comprising predicate clauses within a WHERE clause, said predicate clauses comprising, for each extent of said extents, a respective predicate clause specifying one or more conditions based on said each extent; and computing the query, wherein computing the query includes, for each predicate clause of said predicate clauses; sending a respective set of smart scan requests to an enhanced storage device for execution to cause said enhanced storage device to scan for rows that satisfy the one or more conditions of said each predicate clause, and from the enhanced storage device, receiving resultant rows returned for the respective set of smart scans. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20)
-
Specification