Query Processing in 3D Spatial Databases: Experiences with Oracle Spatial 11g

Falling costs in laser scanning equipment have made it easier to acquire 3D representations of real world entities as high-density point clouds, which may then be generalized to compact forms such as TINs, meshes, surfaces and solids. Scaling to the sizes of such large point clouds is becoming increasingly impossible for desktop applications. Sensing the need for a scalable database management of such 3D data, Oracle developed the 3D Spatial Engine in Oracle 11g. In this paper, we first present the overall architecture and functionality of the 3D Spatial Engine and introduce new geo-referenced data types for scalable storage and management of point clouds, TINs, and 3D vector geometries. We then focus on efficient processing of queries on these data types using a 2-stage filtering. For the second-stage filtering on 3D data, we propose and evaluate various techniques for efficiently answering different types of 3D queries such as anyinteract and distance. We note that to compare the points of point-cloud block or TIN block efficiently with the query, a spatial index may be useful but the creation cost is high. Our experiences are as follows: (1) For an anyinteract query, R-tree based processing is only required when both data and query geometries have large numbers of sub-elements. (2) For a distance query, an R-tree based evaluation is always helpful. We also propose a novel vertex-avoiding ray shooting algorithm for the point-in-solid function.

[1]  Marco Pellegrini Ray Shooting and Lines in Space , 2004, Handbook of Discrete and Computational Geometry, 2nd Ed..

[2]  Hans-Peter Kriegel,et al.  The R*-tree: an efficient and robust access method for points and rectangles , 1990, SIGMOD '90.

[3]  Euro Beinat,et al.  Pro Oracle Spatial , 2004, Apress.

[4]  Fabio Remondino From point cloud to surface , 2003 .

[5]  Sisi Zlatanova On 3D topological relationships , 2000, Proceedings 11th International Workshop on Database and Expert Systems Applications.

[6]  Hanan Samet,et al.  The Design and Analysis of Spatial Data Structures , 1989 .

[7]  Martin Isenburg,et al.  Streaming computation of Delaunay triangulations , 2006, ACM Trans. Graph..

[8]  Gino van den Bergen Collision Detection in Interactive 3D Environments , 2003 .

[9]  Hans-Peter Kriegel,et al.  Efficient processing of spatial joins using R-trees , 1993, SIGMOD Conference.

[10]  Peter van Oosterom,et al.  A Tetrahedronized Irregular Network Based DBMS Approach for 3D Topographic Data Modeling , 2006 .

[11]  Jay Banerjee,et al.  Indexing medium-dimensionality data in Oracle , 1999, SIGMOD '99.

[12]  Euro Beinat,et al.  Pro Oracle Spatial for Oracle Database 11g (Expert's Voice in Oracle) , 2007 .

[13]  Joseph O'Rourke,et al.  Handbook of Discrete and Computational Geometry, Second Edition , 1997 .

[14]  Siva Ravada,et al.  On Valid and Invalid Three-Dimensional Geometries , 2008 .

[15]  Brian Mirtich,et al.  Fast and Accurate Computation of Polyhedral Mass Properties , 1996, J. Graphics, GPU, & Game Tools.

[16]  David H. Eberly,et al.  Geometric Tools for Computer Graphics , 2002 .

[17]  Kothuri Venkata Ravi Kanth,et al.  Efficient Processing of Large Spatial Queries Using Interior Approximations , 2001, SSTD.

[18]  Sisi Zlatanova,et al.  3D GIS, where are we standing? , 2003 .

[19]  Hanan Samet,et al.  Hierarchical Spatial Data Structures , 1989, SSD.

[20]  Gustavo Alonso,et al.  Web services and service-oriented architectures , 2005, 21st International Conference on Data Engineering (ICDE'05).