Abstract:
Described is a system, method, and computer program product to perform bi-directional mapping of hierarchical data (e.g. JSON, XML) to database object types (e.g., user defined database object types).
Abstract:
An optimized method of processing queries requesting a description of a spatial relationship between a test geometry and a query geometry, such as points, lines, polygons, and collections thereof, is disclosed. A first part of the method finds a first spatial relationship between a minimum bounding rectangle (MBR) of the test geometry and an In-Memory R-tree (IMR-tree) built to describe the query geometry. If the first relationship does not specify the requested description, then a second part of the method uses the IMR-tree of the query geometry to find a second spatial relationship between the test geometry itself and the query geometry. Optimizations are applied to the first part and to the second part. Optimizations in the second part depend on the test geometry.
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.
Abstract:
An optimized method of processing queries requesting a description of a spatial relationship between a test geometry and a query geometry, such as points, lines, polygons, and collections thereof, is disclosed. A first part of the method finds a first spatial relationship between a minimum bounding rectangle (MBR) of the test geometry and an In-Memory R-tree (IMR-tree) built to describe the query geometry. If the first relationship does not specify the requested description, then a second part of the method uses the IMR-tree of the query geometry to find a second spatial relationship between the test geometry itself and the query geometry. Optimizations are applied to the first part and to the second part. Optimizations in the second part depend on the test geometry.
Abstract:
Techniques described herein perform spherical PIP analysis by detecting whether a test ray (defined by a test point (TP) and a point (EP) that is external to a spherical polygon) crosses edge arcs (“edges”) of the polygon based on relative orientations of vertices of the test ray and edges. A classifier vector (CV) for a test ray is calculated based on the cross-product of the TP and the EP. Using the CV, the orientation of each vertex of the polygon with respect to the test ray is determined. Candidate edges having vertices with opposite orientations with respect to the test ray are identified. Crossing edges are determine by calculating CVs for each candidate edge, and determining orientations of the TP and EP with respect to each candidate edge. A set of crossing edges is determined, where the TP and the EP have opposite orientations with respect to each crossing edge.
Abstract:
Techniques are described for memory-efficient spatial histogram construction. A hierarchical spatial index has leaf nodes and non-leaf nodes, each leaf node representing a bounding region containing a spatial object, each non-leaf node representing a bounding region at least partially containing one or more spatial objects. A plurality of selected nodes is selected from the plurality of non-leaf nodes. The plurality of selected nodes includes an ancestor of each leaf node. For each particular node in the plurality of selected nodes, a weight is determined. The weight is based on the number of spatial objects contained within the bounding region of the particular node. A spatial partitioning of the plurality of selected nodes is determined. A spatial histogram is generated based on the spatial partitioning of the weights of the plurality of selected nodes.
Abstract:
Techniques and systems for processing within-distance queries are provided. A query for geometry objects within a query distance of a query geometry is received. An in-memory R-tree (IMR-tree) is generated for the query geometry. The IMR-tree includes nodes corresponding to edges of the query geometry. An R-tree index for a plurality of candidate geometries is accessed. At least one node of the R-tree index is processed by: generating an expanded bounding geometry based on the query distance, and using the IMR-tree to determine a topological relationship between the expanded bounding geometry and the query geometry. When the expanded bounding geometry intersects the query geometry, if at least one within-distance test is satisfied, the candidate geometries associated with the selected node are added to a result set. Otherwise, if the selected node is a non-leaf node of the R-tree index, child nodes of the selected node are processed.
Abstract:
Techniques are introduced herein for maintaining geometry-type data on persistent storage and in memory. Specifically, a DBMS that maintains a database table, which includes at least one column storing spatial data objects (SDOs), also maintains metadata for the database table that includes definition data for one or more virtual columns of the table. According to an embodiment, the definition data includes one or more expressions that calculate minimum bounding box values for SDOs stored in the geometry-type column in the table. The one or more expressions in the metadata maintained for the table are used to create one or more in-memory columns that materialize the bounding box data for the represented SDOs. When a query that uses spatial-type operators to perform spatial filtering over data in the geometry-type column is received, the DBMS replaces the spatial-type operators with operators that operate over the scalar bounding box information materialized in memory.
Abstract:
Techniques are introduced herein for maintaining geometry-type data on persistent storage and in memory. Specifically, a DBMS that maintains a database table, which includes at least one column storing spatial data objects (SDOs), also maintains metadata for the database table that includes definition data for one or more virtual columns of the table. According to an embodiment, the definition data includes one or more expressions that calculate minimum bounding box values for SDOs stored in the geometry-type column in the table. The one or more expressions in the metadata maintained for the table are used to create one or more in-memory columns that materialize the bounding box data for the represented SDOs. When a query that uses spatial-type operators to perform spatial filtering over data in the geometry-type column is received, the DBMS replaces the spatial-type operators with operators that operate over the scalar bounding box information materialized in memory.
Abstract:
An optimized method of processing queries requesting a description of a spatial relationship between a test geometry and a query geometry, such as points, lines, polygons, and collections thereof, is disclosed. A first part of the method finds a first spatial relationship between a minimum bounding rectangle (MBR) of the test geometry and an In-Memory R-tree (IMR-tree) built to describe the query geometry. If the first relationship does not specify the requested description, then a second part of the method uses the IMR-tree of the query geometry to find a second spatial relationship between the test geometry itself and the query geometry. Optimizations are applied to the first part and to the second part. Optimizations in the second part depend on the test geometry.