Efficient processing of spatial joins using R-trees
SIGMOD '93 Proceedings of the 1993 ACM SIGMOD international conference on Management of data
Partition based spatial-merge join
SIGMOD '96 Proceedings of the 1996 ACM SIGMOD international conference on Management of data
Multidimensional access methods
ACM Computing Surveys (CSUR)
Indexing the positions of continuously moving objects
SIGMOD '00 Proceedings of the 2000 ACM SIGMOD international conference on Management of data
Optimizing multidimensional index trees for main memory access
SIGMOD '01 Proceedings of the 2001 ACM SIGMOD international conference on Management of data
A class of data structures for associative searching
PODS '84 Proceedings of the 3rd ACM SIGACT-SIGMOD symposium on Principles of database systems
A Framework for Generating Network-Based Moving Objects
Geoinformatica
On the Generation of Time-Evolving Regional Data
Geoinformatica
R-trees: a dynamic index structure for spatial searching
SIGMOD '84 Proceedings of the 1984 ACM SIGMOD international conference on Management of data
Scalable Sweeping-Based Spatial Join
VLDB '98 Proceedings of the 24rd International Conference on Very Large Data Bases
Benchmarking Spatial Joins À La Carte
SSDBM '98 Proceedings of the 10th International Conference on Scientific and Statistical Database Management
On the Generation of Spatiotemporal Datasets
SSD '99 Proceedings of the 6th International Symposium on Advances in Spatial Databases
DynaMark: A Benchmark for Dynamic Spatial Indexing
MDM '03 Proceedings of the 4th International Conference on Mobile Data Management
Optimizing database architecture for the new bottleneck: memory access
The VLDB Journal — The International Journal on Very Large Data Bases
High-performance spatial indexing for location-based services
WWW '03 Proceedings of the 12th international conference on World Wide Web
STR: A simple and efficient algorithm for R-tree packing
STR: A simple and efficient algorithm for R-tree packing
Main Memory Evaluation of Monitoring Queries Over Moving Objects
Distributed and Parallel Databases
SINA: scalable incremental processing of continuous queries in spatio-temporal databases
SIGMOD '04 Proceedings of the 2004 ACM SIGMOD international conference on Management of data
STRIPES: an efficient index for predicted trajectories
SIGMOD '04 Proceedings of the 2004 ACM SIGMOD international conference on Management of data
Conceptual partitioning: an efficient method for continuous nearest neighbor monitoring
Proceedings of the 2005 ACM SIGMOD international conference on Management of data
Maintenance of K-nn and spatial join queries on continuously moving points
ACM Transactions on Database Systems (TODS)
ACM Transactions on Database Systems (TODS)
Scaling games to epic proportions
Proceedings of the 2007 ACM SIGMOD international conference on Management of data
The TPR*-tree: an optimized spatio-temporal access method for predictive queries
VLDB '03 Proceedings of the 29th international conference on Very large data bases - Volume 29
A benchmark for evaluating moving object indexes
Proceedings of the VLDB Endowment
Scalability for Virtual Worlds
ICDE '09 Proceedings of the 2009 IEEE International Conference on Data Engineering
Trees or grids?: indexing moving objects in main memory
Proceedings of the 17th ACM SIGSPATIAL International Conference on Advances in Geographic Information Systems
BerlinMOD: a benchmark for moving object databases
The VLDB Journal — The International Journal on Very Large Data Bases
Behavioral simulations in MapReduce
Proceedings of the VLDB Endowment
Thread-level parallel indexing of update intensive moving-object workloads
SSTD'11 Proceedings of the 12th international conference on Advances in spatial and temporal databases
MOVIES: indexing moving objects by shooting index images
Geoinformatica
The COST benchmark—comparison and evaluation of spatio-temporal indexes
DASFAA'06 Proceedings of the 11th international conference on Database Systems for Advanced Applications
Hi-index | 0.00 |
Many modern applications rely on high-performance processing of spatial data. Examples include location-based services, games, virtual worlds, and scientific simulations such as molecular dynamics and behavioral simulations. These applications deal with large numbers of moving objects that continuously sense their environment, and their data access can often be abstracted as a repeated spatial join. Updates to object positions are interspersed with these join operations, and batched for performance. Even for the most demanding scenarios, the data involved in these joins fits comfortably in the main memory of a cluster of machines, and most applications run completely in main memory for performance reasons. Choosing appropriate spatial join algorithms is challenging due to the large number of techniques in the literature. In this paper, we perform an extensive evaluation of repeated spatial join algorithms for distance (range) queries in main memory. Our study is unique in breadth when compared to previous work: We implement, tune, and compare ten distinct algorithms on several workloads drawn from the simulation and spatial indexing literature. We explore the design space of both index nested loops algorithms and specialized join algorithms, as well as the use of moving object indices that can be incrementally maintained. Surprisingly, we find that when queries and updates can be batched, repeatedly re-computing the join result from scratch outperforms using a moving object index in all but the most extreme cases. This suggests that--given the code complexity of index structures for moving objects -- specialized join strategies over simple index structures, such as Synchronous Traversal over R-Trees, should be the methods of choice for the above applications.