Abstract
Most spatial join algorithms either assume the existence of a spatial index structure that is traversed during the join process, or solve the problem by sorting, partitioning, or on-the-fly index construction. In this paper, we develop a simple plane-sweeping algorithm that unifies the index-based and non-index based approaches. This algorithm processes indexed as well as non-indexed inputs, extends naturally to multi-way joins, and can be built easily from a few standard operations. We present the results of a comparative study of the new algorithm with several index-based and non-index based spatial join algorithms. We consider a number of factors, including the relative performance of CPU and disk, the quality of the spatial indexes, and the sizes of the input relations. An important conclusion from our work is that using an index-based approach whenever indexes are available does not always lead to the best execution time, and hence we propose the use of a simple cost model to decide when to follow an index-based approach.
Supported in part by National Science Foundation grants EIA-9870734 and EIA-9972879.
Supported in part by the U.S. Army Research Office under grant DAAH04-96-1-0013 and by the National Science Foundation under grants CCR-9522047 and EIA-9870734.
This work was done while a Visiting Scholar at Duke University.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
S. Acharya, V. Poosala, and S. Ramaswamy. Selectivity estimation in spatial databases. In Proc. SIGMOD Intl. Conf. on Management of Data, pages 13–24, 1999.
L. Arge. The buffer tree: A new technique for optimal I/O-algorithms. In Proc. Workshop on Algorithms and Data Structures, LNCS 955, pages 334–345, 1995. A complete version appears as BRICS technical report RS-96-28, University of Aarhus.
L. Arge, R. Barve, O. Procopiuc, L. Toma, D. E. Vengroff, and R. Wickeremesinghe. TPIE User Manual and Reference (edition 0.9.01a). Duke University, 1999. The manual and software distribution are available on the web at http://www.cs.duke.edu/TPIE/.
L. Arge, O. Procopiuc, S. Ramaswamy, T. Suel, and J. S. Vitter. Scalable sweeping-based spatial join. In Proc. Intl. Conf. on Very Large Databases, pages 570–581, 1998.
L. Arge, O. Procopiuc, S. Ramaswamy, T. Suel, and J. S. Vitter. Theory and practice of I/O-efficient algorithms for multidimensional batched searching problems. In ACM-SIAM Symp. on Discrete Algorithms, pages 685–694, 1998.
L. Becker, K. Hinrichs, and U. Finke. A new algorithm for computing joins with grid files. In Proc. IEEE Intl. Conf. on Data Engineering, pages 190–197, 1993.
N. Beckmann, H.-P. Kriegel, R. Schneider, and B. Seeger. The R*-tree: An efficient and robust access method for points and rectangles. In Proc. SIGMOD Intl. Conf. on Management of Data, pages 322–331, 1990.
T. Brinkhoff, H.-P. Kriegel, and B. Seeger. Efficient processing of spatial joins using R-trees. In Proc. SIGMOD Intl. Conf. on Management of Data, pages 237–246, 1993.
G. S. Brodal and J. Katajainen. Worst-case efficient external-memory priority queues. In Proc. Scandinavian Workshop on Algorithms Theory, LNCS 1432, pages 107–118, 1998.
D. J. DeWitt, N. Kabra, J. M. Patel, and J.-B. Yu. Client-server Paradise. In Proc. Intl. Conf. on Very Large Databases, pages 558–569, 1994.
M. Goodrich, J.-J. Tsay, D. E. Vengroff, and J. S. Vitter. External-memory computational geometry. In Proc. IEEE Symp. on Foundations of Computer Science, pages 714–723, 1993.
O. Günther. Efficient computation of spatial joins. In Proc. IEEE Intl. Conf. on Data Engineering, pages 50–59, 1993.
R. H. Güting and W. Schilling. A practical divide-and conquer algorithm for the rectangle intersection problem. Information Sciences, 42: 95–112, 1987.
A. Guttman. R-trees: A dynamic index structure for spatial searching. In Proc. SIGMOD Intl. Conf. on Management of Data, pages 47–57, 1984.
E. G. Hoel and H. Samet. A qualitative comparison study of data structures for large linear segment databases. In Proc. SIGMOD Intl. Conf. on Management of Data, pages 205–214, 1992.
Y.-W. Huang, N. Jing, and E. Rundensteiner. Spatial joins using R-trees: Breadth-first traversal with global optimizations. In Proc. Intl. Conf. on Very Large Databases, pages 396–405, 1997.
I. Kamel and C. Faloutsos. On packing R-trees. In Proc. Intl. Conf. on Information and Knowledge Management, pages 47–57, 1993.
K. Kim and S. K. Cha. Sibling clustering of tree-based spatial indexes for efficient spatial query processing. In Proc. ACM Intl. Conf. Information and Knowledge Management, pages 398–405, 1998.
M. Kitsuregawa, L. Harada, and M. Takagi. Join strategies on KD-tree indexed relations. In Proc. IEEE Intl. Conf. on Data Engineering, pages 85–93, 1989.
N. Koudas and K. C. Sevcik. Size separation spatial join. In Proc. SIGMOD Intl. Conf. on Management of Data, pages 324–335, 1996.
M.-L. Lo and C. V. Ravishankar. Spatial joins using seeded trees. In Proc. SIG-MOD Intl. Conf. on Management of Data, pages 209–220, 1994.
M.-L. Lo and C. V. Ravishankar. Generating seeded trees from data sets. In Proc. Intl. Symp. on Spatial Databases, LNCS 951, pages 328–347, 1995.
M.-L. Lo and C. V. Ravishankar. Spatial hash-joins. In Proc. SIGMOD Intl. Conf. on Management of Data, pages 247–258, 1996.
N. Mamoulis and D. Papadias. Integration of spatial join algorithms for joining multiple inputs. In Proc. SIGMOD Intl. Conf. on Management of Data, pages 1–12, 1999.
N. Mamoulis, D. Papadias, and Y. Theodoridis. Processing and optimization of multiway spatial joins using R-trees. In Proc. Symp. on Principles of Database Systems, pages 44–55, 1999.
D. R. Musser and A. Saini. STL Tutorial and Reference Guide: C++ Programming with the Standard Template Library. Addison-Wesley, 1996.
J. Nievergelt, H. Hinterberger, and K. C. Sevcik. The grid file: An adaptable, symmetric multikey file structure. ACM Trans. on Database Systems, 9(1):38–71, March 1984.
J. A. Orenstein. A comparison of spatial query processing techniques for native and parameter spaces. In Proc. SIGMOD Intl. Conf. on Management of Data, pages 343–352, 1990.
J. A. Orenstein and F. A. Manola. PROBE spatial data modeling and query processing in an image database application. IEEE Trans. on Software Engineering, 14(5):611–629, May 1988.
J. M. Patel and D. J. DeWitt. Partition based spatial-merge join. In Proc. SIG-MOD Intl. Conf. on Management of Data, pages 259–270, 1996.
F. P. Preparata and M. I. Shamos. Computational Geometry: An Introduction. Springer, Berlin, 2nd edition, 1988.
D. Rotem. Spatial join indices. In Proc. IEEE Intl. Conf. on Data Engineering, pages 500–509, 1991.
H. Samet. The Design and Analysis of Spatial Data Structures. Addison-Wesley, 1990.
T. Sellis, N. Roussopoulos, and C. Faloutsos. The R+-tree: A dynamic index for multi-dimensional objects. In Proc. Intl. Conf. on Very Large Databases, pages 507–518, 1987.
TIGER/Line™Files, 1997 Technical Documentation. Washington, DC, September 1998. http://www.census.gov/geo/tiger/TIGER97D.pdf.
U. Vahalia. UNIX Internals: The New Frontiers. Prentice Hall, 1996.
P. Valduriez. Join indices. ACM Trans. on Database Systems, 12(2):218–246, June 1987.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2000 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Arge, L., Procopiuc, O., Ramaswamy, S., Suel, T., Vahrenhold, J., Vitter, J.S. (2000). A Unified Approach for Indexed and Non-indexed Spatial Joins. In: Zaniolo, C., Lockemann, P.C., Scholl, M.H., Grust, T. (eds) Advances in Database Technology — EDBT 2000. EDBT 2000. Lecture Notes in Computer Science, vol 1777. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-46439-5_29
Download citation
DOI: https://doi.org/10.1007/3-540-46439-5_29
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-67227-2
Online ISBN: 978-3-540-46439-6
eBook Packages: Springer Book Archive