GPU-Based Parallel Indexing for Concurrent SpatialQuery Processing

In most spatial database applications, the input data is very large. Previous work has shown the importance of using spatial indexing and parallel computing to speed up such tasks. In recent years, GPUs have become a mainstream platform for massively parallel data processing. On the other hand, due to the complex hardware architecture and programming model, developing programs optimized towards high performance on GPUs is non-trivial, and traditional wisdom geared towards CPU implementations is often found to be ineffective. Recent work on GPU-based spatial indexing focused on parallelizing one individual query at a time. In this paper, we argue that current one-query-at-a-time approach has low work efficiency and cannot make good use of GPU resources. To address such challenges, we present a framework named G-PICS for parallel processing of large number of concurrent spatial queries over big datasets on GPUs. G-PICS is motivated by the fact that many spatial query processing applications are busy systems in which a large number of queries arrive per unit of time. G-PICS encapsulates an efficient parallel algorithm for constructing spatial trees on GPUs and supports major spatial query types such as spatial point search, range search, within-distance search, k-nearest neighbors, and spatial joins. While support for dynamic data inputs missing from existing work, G-PICS provides an efficient parallel update procedure on GPUs. With the query processing, tree construction, and update procedure introduced, G-PICS shows great performance boosts over best-known parallel GPU and parallel CPU-based spatial processing systems.

[1]  佐藤 孝紀,et al.  A Hierarchical Data Structure for Picture Processing , 1976 .

[2]  Hanan Samet,et al.  The Quadtree and Related Hierarchical Data Structures , 1984, CSUR.

[3]  Hanan Samet,et al.  An Overview of Quadtrees, Octrees, and Related Hierarchical Data Structures , 1988 .

[4]  David J. DeWitt,et al.  Parallel database systems: the future of database processing or a passing fad? , 1990, SGMD.

[5]  Goetz Graefe,et al.  Query evaluation techniques for large databases , 1993, CSUR.

[6]  Hanan Samet,et al.  Performance of Data-Parallel Spatial Operations , 1994, VLDB.

[7]  Howard R. Turtle,et al.  Query Evaluation: Strategies and Optimizations , 1995, Inf. Process. Manag..

[8]  Tobun Dorbin Ng,et al.  Alleviating search uncertainty through concept associations: automatic indexing, co-occurrence analysis, and parallel computing , 1998 .

[9]  Agnès Voisard,et al.  Spatial Databases: With Application to GIS , 2001 .

[10]  Yannis Theodoridis,et al.  Ten Benchmark Database Queries for Location-based Services , 2003, Comput. J..

[11]  Dinesh Manocha,et al.  Fast computation of database operations using graphics processors , 2004, SIGMOD '04.

[12]  Divyakant Agrawal,et al.  Hardware Acceleration in Commercial Databases: A Case Study of Spatial Operations , 2004, VLDB.

[13]  Walid G. Aref,et al.  Continuous Query Processing of Spatio-Temporal Data Streams in PLACE , 2005, GeoInformatica.

[14]  A. N. Wilschut,et al.  Dataflow query execution in a parallel main-memory environment , 1991, Distributed and Parallel Databases.

[15]  Tim Foley,et al.  KD-tree acceleration structures for a GPU raytracer , 2005, HWWS '05.

[16]  Pat Hanrahan,et al.  Interactive k-d tree GPU raytracing , 2007, SI3D.

[17]  Bingsheng He,et al.  Relational joins on graphics processors , 2008, SIGMOD Conference.

[18]  Carsten Kutzner,et al.  GROMACS 4:  Algorithms for Highly Efficient, Load-Balanced, and Scalable Molecular Simulation. , 2008, Journal of chemical theory and computation.

[19]  Kun Zhou,et al.  Real-time KD-tree construction on graphics hardware , 2008, SIGGRAPH 2008.

[20]  Naphtali Rishe,et al.  Experiences on Processing Spatial Data with MapReduce , 2009, SSDBM.

[21]  Dinesh Manocha,et al.  Fast BVH Construction on GPUs , 2009, Comput. Graph. Forum.

[22]  Alex D. Breslow,et al.  Quadtree Construction on the GPU : A Hybrid CPU-GPU Approach , 2010 .

[23]  Yuni Xia,et al.  Performance analysis of a dual-tree algorithm for computing spatial distance histograms , 2011, The VLDB Journal.

[24]  Eduardo Mena,et al.  Location-dependent query processing: Where we are and where we are heading , 2010, CSUR.

[25]  Le Gruenwald,et al.  Indexing large-scale raster geospatial data using massively parallel GPGPU computing , 2010, GIS '10.

[26]  Dongseop Kwon,et al.  Parallel Range Query Processing on R-Tree with Graphics Processing Unit , 2011, 2011 IEEE Ninth International Conference on Dependable, Autonomic and Secure Computing.

[27]  Dinesh Manocha,et al.  Memory-Scalable GPU Spatial Hierarchy Construction , 2011, IEEE Transactions on Visualization and Computer Graphics.

[28]  William J. Dally,et al.  GPUs and the Future of Parallel Computing , 2011, IEEE Micro.

[29]  Enrique Alba,et al.  Parallel metaheuristics: recent advances and new trends , 2012, Int. Trans. Oper. Res..

[30]  Le Gruenwald,et al.  Parallel spatial query processing on GPUs using R-trees , 2013, BigSpatial '13.

[31]  Ugur Güdükbay,et al.  Dynamic point-region quadtrees for particle simulations , 2013, Inf. Sci..

[32]  Joshua Gluck,et al.  Fast GPGPU Based Quadtree Construction , 2014 .

[33]  Hao Li,et al.  Performance modeling in CUDA streams — A means for high-throughput data processing , 2014, 2014 IEEE International Conference on Big Data (Big Data).

[34]  Siyuan Ma,et al.  Concurrent Analytical Query Processing with GPUs , 2014, Proc. VLDB Endow..

[35]  Xingming Sun,et al.  Achieving Efficient Cloud Search Services: Multi-Keyword Ranked Search over Encrypted Cloud Data Supporting Parallel Computing , 2015, IEICE Trans. Commun..

[36]  Cláudio T. Silva,et al.  A GPU-based index to support interactive spatio-temporal queries over historical data , 2016, 2016 IEEE 32nd International Conference on Data Engineering (ICDE).

[37]  Mohamed F. Mokbel,et al.  Scout: A GPU-Aware System for Interactive Spatio-temporal Data Visualization , 2017, SIGMOD Conference.

[38]  Yi-Cheng Tu,et al.  Fast Equi-Join Algorithms on GPUs: Design and Implementation , 2017, SSDBM.