Abstract
Many modern applications store and process datasets much larger than the main memory of even state-of-the-art high-end machines. Thus massive and dynamically changing datasets often need to be stored in data structures on external storage devices, and in such cases the Input/Output (or I/O) communication between internal and external memory can become a major performance bottleneck. In this paper we survey recent advances in the development of worst-case I/O-efficient external memory data structures.
Supported in part by the National Science Foundation through ESS grant EIA-9870734, RI grant EIA-9972879, and CAREER grant EIA-9984099.
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
D. J. Abel and D. M. Mark. A comparative analysis of some two-dimensional orderings. Intl. J. Geographic Informations Systems, 4(1):21–31, 1990.
J. Abello, A. L. Buchsbaum, and J. R. Westbrook. A functional approach to external graph algorithms. In Proc. Annual European Symposium on Algorithms, LNCS 1461, pages 332–343, 1998.
P. K. Agarwal, L. Arge, G. S. Brodal, and J. S. Vitter. I/O-efficient dynamic point location in monotone planar subdivisions. In Proc. ACM-SIAM Symp. on Discrete Algorithms, pages 1116–1127, 1999.
P. K. Agarwal, L. Arge, and J. Erickson. Indexing moving points. In Proc. ACM Symp. Principles of Database Systems, pages 175–186, 2000.
P. K. Agarwal, L. Arge, J. Erickson, P. Franciosa, and J. Vitter. Efficient searching with linear constraints. Journal of Computer and System Sciences, 61(2):194–216, 2000.
P. K. Agarwal, L. Arge, and S. Govindarajan. CRB-tree: An optimal indexing scheme for 2d aggregate queries. Manuscript, 2001.
P. K. Agarwal, L. Arge, T. M. Murali, K. Varadarajan, and J. S. Vitter. I/O-efficient algorithms for contour line extraction and planar graph blocking. In Proc. ACM-SIAM Symp. on Discrete Algorithms, pages 117–126, 1998.
P. K. Agarwal, L. Arge, O. Procopiuc, and J. S. Vitter. Dynamic kd-trees on large data sets. Manuscript, 2001.
P. K. Agarwal, L. Arge, O. Procopiuc, and J. S. Vitter. A framework for index bulk loading and dynamization. In Proc. Annual International Colloquium on Automata, Languages, and Programming, 2001.
P. K. Agarwal, L. Arge, and J. Vahrenhold. A time responsive indexing scheme for moving points. In Proc. Workshop on Algorithms and Data Structures, 2001.
P. K. Agarwal, M. de Berg, J. Gudmundsson, M. Hammer, and H. J. Haverkort. Box-trees and R-trees with near-optimal query time. In Proc. ACM Symp. on Computational Geometry, pages 124–133, 2001.
P. K. Agarwal and J. Erickson. Geometric range searching and its relatives. In B. Chazelle, J. E. Goodman, and R. Pollack, editors, Advances in Discrete and Computational Geometry, volume 223 of Contemporary Mathematics, pages 1–56. American Mathematical Society, Providence, RI, 1999.
A. Aggarwal and J. S. Vitter. The Input/Output complexity of sorting and related problems. Communications of the ACM, 31(9):1116–1127, 1988.
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. The I/O-complexity of ordered binary-decision diagram manipulation. In Proc. Int. Symp. on Algorithms and Computation, LNCS 1004, pages 82–91, 1995. A complete version appears as BRICS technical report RS-96-29, University of Aarhus.
L. Arge. External memory data structures. In J. Abello, P. M. Pardalos, and M. G. C. Resende, editors, Handbook of Massive Data Sets. Kluwer Academic Publishers, 2001. (To appear).
L. Arge, R. Barve, O. Procopiuc, L. Toma, D. E. Vengroff, and R. Wickremesinghe. 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, G. S. Brodal, and L. Toma. On external memory MST, SSSP and multi-way planar graph separation. In Proc. Scandinavian Workshop on Algorithms Theory, LNCS 1851, pages 433–447, 2000.
L. Arge, J. Chase, P. Halpin, L. Toma, D. Urban, J. Vitter, and R. Wick-remesinghe. Flow computation on massive grids. In 16’th Annual Symposium of the International Association of Landscape Ecology (US-IALE 2001), 2001.
L. Arge, P. Ferragina, R. Grossi, and J. Vitter. On sorting strings in external memory. In Proc. ACM Symp. on Theory of Computation, pages 540–548, 1997.
L. Arge, K. H. Hinrichs, J. Vahrenhold, and J. S. Vitter. Efficient bulk operations on dynamic R-trees. In Proc. Workshop on Algorithm Engineering, LNCS 1619, pages 328–347, 1999.
L. Arge, U. Meyer, L. Toma, and N. Zeh. On external-memory planar depth first search. In Proc. Workshop on Algorithms and Data Structures, 2001.
L. Arge, O. Procopiuc, S. Ramaswamy, T. Suel, J. Vahrenhold, and J. S. Vitter. A unified approach for indexed and non-indexed spatial joins. In Proc. Conference on Extending Database Technology, 1999.
L. Arge, O. Procopiuc, S. Ramaswamy, T. Suel, and J. S. Vitter. Scalable sweeping-based spatial join. In Proc. International Conf. on Very Large Databases, 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 Proc. ACM-SIAM Symp. on Discrete Algorithms, pages 685–694, 1998.
L. Arge, V. Samoladas, and J. S. Vitter. On two-dimensional indexability and optimal range search indexing. In Proc. ACM Symp. Principles of Database Systems, pages 346–357, 1999.
L. Arge, L. Toma, and J. S. Vitter. I/O-efficient algorithms for problems on grid-based terrains. In Proc. Workshop on Algorithm Engineering and Experimentation, 2000.
L. Arge and J. Vahrenhold. I/O-efficient dynamic planar point location. In Proc. ACM Symp. on Computational Geometry, pages 191–200, 2000.
L. Arge, D. E. Vengroff, and J. S. Vitter. External-memory algorithms for processing line segments in geographic information systems. In Proc. Annual European Symposium on Algorithms, LNCS 979, pages 295–310, 1995. To appear in special issues of Algorithmica on Geographical Information Systems.
L. Arge and J. S. Vitter. Optimal dynamic interval management in external memory. In Proc. IEEE Symp. on Foundations of Comp. Sci., pages 560–569, 1996.
S. Arya, D. M. Mount, N. S. Netanyahu, R. Silverman, and A. Wu. An optimal algorithm for approximate nearest neighbor searching. In Proc. 5th ACM-SIAM Sympos. Discrete Algorithms, pages 573–582, 1994.
T. Asano, D. Ranjan, T. Roos, E. Welzl, and P. Widmayer. Space-filling curves and their use in the design of geometric data structures. Theoret. Comput. Sci., 181(1):3–15, July 1997.
J. Basch, L. J. Guibas, and J. Hershberger. Data structures for mobile data. Journal of Algorithms, 31(1):1–28, 1999.
H. Baumgarten, H. Jung, and K. Mehlhorn. Dynamic point location in general subdivisions. Journal of Algorithms, 17:342–380, 1994.
R. Bayer and E. McCreight. Organization and maintenance of large ordered indexes. Acta Informatica, 1:173–189, 1972.
B. Becker, S. Gschwind, T. Ohler, B. Seeger, and P. Widmayer. An asymptotically optimal multiversion B-tree. VLDB Journal, 5(4):264–275, 1996.
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.
M. A. Bender, E. D. Demaine, and M. Farach-Colton. Cache-oblivious B-trees. In Proc. IEEE Symp. on Foundations of Comp. Sci., pages 339–409, 2000.
J. L. Bentley. Decomposable searching problems. Information Processing Letters, 8(5):244–251, 1979.
S. Berchtold, C. Böhm, and H.-P. Kriegel. Improving the query performance of high-dimensional index structures by bulk load operations. In Proc. Conference on Extending Database Technology, LNCS 1377, pages 216–230, 1998.
S. Berchtold, B. Ertl, D. A. Keim, H.-P. Kriegel, and T. Seidl. Fast nearest neighbor search in high-dimensional spaces. In Proc. IEEE International Conference on Data Engineering, pages 209–218, 1998.
S. N. Bespamyatnikh. An optimal algorithm for closets pair maintenance. Discrete and Computational Geometry, 19:175–195, 1998.
G. Blankenagel and R. H. Güting. XP-trees—External priority search trees. Technical report, FernUniversität Hagen, Informatik-Bericht Nr. 92, 1990.
K. Brengel, A. Crauser, P. Ferragina, and U. Meyer. An experimental study of priority queues in external memory. In Proc. Workshop on Algorithm Engineering, LNCS 1668, pages 345–358, 1999.
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.
A. L. Buchsbaum, M. Goldwasser, S. Venkatasubramanian, and J. R. Westbrook. On external memory graph traversal. In Proc. ACM-SIAM Symp. on Discrete Algorithms, pages 859–860, 2000.
P. Callahan, M. T. Goodrich, and K. Ramaiyer. Topology B-trees and their applications. In Proc. Workshop on Algorithms and Data Structures, LNCS 955, pages 381–392, 1995.
P. B. Callahan and S. R. Kosaraju. Algorithms for dynamic closest-pair and n-body potential fields. In Proc. 6th ACM-SIAM Sympos. Discrete Algorithms, pages 263–272, 1995.
P. B. Callahan and S. R. Kosaraju. A decomposition of multidimensional point sets with applications to k-nearest-neighbors and n-body potential fields. Journal of the ACM, 42(1):67–90, 1995.
T. M. Chan. Random sampling, halfspace range reporting, and construction of (≤k)-levels in three dimensions. SIAM Journal of Computing, 30(2):561–575, 2000.
B. Chazelle. Filtering search: a new approach to query-answering. SIAM J. Comput., 15(3):703–724, 1986.
B. Chazelle. A functional approach to data structures and its use in multidimensional searching. SIAM J. Comput., 17(3):427–462, June 1988.
B. Chazelle. Lower bounds for orthogonal range searching: I. the reporting case. Journal of the ACM, 37(2):200–212, Apr. 1990.
B. Chazelle and L. J. Guibas. Fractional cascading: I. A data structuring technique. Algorithmica, 1:133–162, 1986.
B. Chazelle, L. J. Guibas, and D. T. Lee. The power of geometric duality. BIT, 25(1):76–90, 1985.
S. W. Cheng and R. Janardan. New results on dynamic planar point location. SIAM J. Comput., 21(5):972–999, 1992.
Y.-J. Chiang. Dynamic and I/O-Efficient Algorithms for Computational Geometry and Graph Problems: Theoretical and Experimental Results. PhD thesis, Brown University, August 1995.
Y.-J. Chiang. Experiments on the practical I/O efficiency of geometric algorithms: Distribution sweep vs. plane sweep. In Proc. Workshop on Algorithms and Data Structures, LNCS 955, pages 346–357, 1995.
Y.-J. Chiang, M. T. Goodrich, E. F. Grove, R. Tamassia, D. E. Vengroff, and J. S. Vitter. External-memory graph algorithms. In Proc. ACM-SIAM Symp. on Discrete Algorithms, pages 139–149, 1995.
Y.-J. Chiang and C. T. Silva. I/O optimal isosurface extraction. In Proc. IEEE Visualization, pages 293–300, 1997.
Y.-J. Chiang and C. T. Silva. External memory techniques for isosurface extraction in scientific visualization. In J. Abello and J. S. Vitter, editors, External memory algorithms and visualization, pages 247–277. American Mathematical Society, DIMACS series in Discrete Mathematics and Theoretical Computer Science, 1999.
Y.-J. Chiang, C. T. Silva, and W. J. Schroeder. Interactive out-of-core isosurface extraction. In Proc. IEEE Visualization, pages 167–174, 1998.
D. Comer. The ubiquitous B-tree. A CM Computing Surveys, 11(2):121–137, 1979.
A. Crauser and P. Ferragina. On constructing suffix arrays in external memory. In Proc. Annual European Symposium on Algorithms, LNCS, 1643, pages 224–235, 1999.
A. Crauser, P. Ferragina, K. Mehlhorn, U. Meyer, and E. Ramos. Randomized external-memory algorithms for some geometric problems. In Proc. ACM Symp. on Computational Geometry, pages 259–268, 1998.
A. Crauser and K. Mehlhorn. LEDA-SM: A Platform for Secondary Memory Computation. Max-Planck-Institut für Informatik, 1999. The manual and software distribution are available on the web at http://www.mpi-sb.mpg.de/crauser/leda-sm.html.
A. Crauser and K. Mehlhorn. LEDA-SM: Extending LEDA to secondary memory. In Proc. Workshop on Algorithm Engineering, 1999.
M. de Berg, J. Gudmundsson, M. Hammar, and M. Overmars. On R-trees with low stabbing number. In Proc. Annual European Symposium on Algorithms, pages 167–178, 2000.
D. J. De Witt, N. Kabra, J. Luo, J. M. Patel, and J.-B. Yu. Client-server paradise. In Proc. International Conf. on Very Large Databases, pages 558–569, 1994.
J. R. Driscoll, N. Sarnak, D. D. Sleator, and R. Tarjan. Making data structures persistent. Journal of Computer and System Sciences, 38:86–124, 1989.
H. Edelsbrunner. A new approach to rectangle intersections, part I. Int. J. Computer Mathematics, 13:209–219, 1983.
H. Edelsbrunner. A new approach to rectangle intersections, part II. Int. J. Computer Mathematics, 13:221–229, 1983.
H. Edelsbrunner and M. Overmars. Batched dynamic solutions to decomposable searching problems. Journal of Algorithms, 6:515–542, 1985.
H. Edelsbrunner and M. H. Overmars. On the equivalence of some rectangle problems. Inform. Process. Lett., 14:124–127, 1982.
G. Evangelidis, D. Lomet, and B. Salzberg. The hb π-tree: A multi-attribute index supporting concurrency, recovery and node consolidation. The VLDB Journal, 6(1):1–25, 1997.
R. Fadel, K. V. Jakobsen, J. Katajainen, and J. Teuhola. Heaps and heapsort on secondary storage. Theoretical Computer Science, 220(2):345–362, 1999.
M. Farach, P. Ferragina, and S. Muthukrishnan. Overcoming the memory bottleneck in suffix tree construction. In Proc. IEEE Symp. on Foundations of Comp. Sci., pages 174–183, 1998.
P. Ferragina and R. Grossi. A fully-dynamic data structure for external substring search. In Proc. ACM Symp. on Theory of Computation, pages 693–702, 1995.
P. Ferragina and R. Grossi. Fast string searching in secondary storage: Theoretical developments and experimental results. In Proc. ACM-SIAM Symp. on Discrete Algorithms, pages 373–382, 1996.
P. Ferragina and F. Luccio. Dynamic dictionary matching in external memory. Information and Computation, 146(2):85–99, 1998.
E. Feuerstein and A. Marchetti-Spaccamela. Memory paging for connectivity and path problems in graphs. In Proc. Int. Symp. on Algorithms and Computation, LNCS 762, pages 416–425, 1993.
P. Franciosa and M. Talamo. Time optimal halfplane search on external memory. Unpublished manuscript, 1997.
P. G. Franciosa and M. Talamo. Orders, k-sets and fast halfplane search on paged memory. In Proc. Workshop on Orders, Algorithms and Applications (ORDAL’94), LNCS 831, pages 117–127, 1994.
G. N. Frederickson. A structure for dynamically maintaining rooted trees. In Proc. ACM-SIAM Symp. on Discrete Algorithms, pages 175–184, 1993.
V. Gaede and O. Günther. Multidimensional access methods. ACM Computing Surveys, 30(2):170–231, 1998.
M. T. Goodrich, J.-J. Tsay, D. E. Vengroff, and J. S. Vitter. External-memory computational geometry. In Proc. IEEE Symp. on Foundations of Comp. Sci., pages 714–723, 1993.
S. Govindarajan, T. Lukovszki, A. Maheshwari, and N. Zeh. I/O-efficient well-separated pair decomposition and its applications. In Proc. Annual European Symposium on Algorithms, pages 220–231, 2000.
D. Greene. An implementation and performance analysis of spatial data access methods. In Proc. IEEE International Conference on Data Engineering, pages 606–615, 1989.
R. Grossi and G. F. Italiano. Efficient cross-tree for external memory. In J. Abello and J. S. Vitter, editors, External Memory Algorithms and Visualization, pages 87–106. American Mathematical Society, DIMACS series in Discrete Mathematics and Theoretical Computer Science, 1999. Revised version available at ftp://ftp.di.unipi.it/pub/techreports/TR-00-16.ps.Z.
R. Grossi and G. F. Italiano. Efficient splitting and merging algorithms for order decomposable problems. Information and Computation, 154(1):1–33, 1999.
O. Günther. The design of the cell tree: An object-oriented index structure for geometric databases. In Proc. IEEE International Conference on Data Engineering, pages 598–605, 1989.
A. Guttman. R-trees: A dynamic index structure for spatial searching. In Proc. SIGMOD Intl. Conf. on Management of Data, pages 47–57, 1984.
J. M. Hellerstein, E. Koutsoupias, and C. H. Papadimitriou. On the analysis of indexing schemes. In Proc. ACM Symp. Principles of Database Systems, pages 249–256, 1997.
K. H. Hinrichs. The grid file system: Implementation and case studies of applications. PhD thesis, Dept. Information Science, ETH, Zürich, 1985.
S. Huddleston and K. Mehlhorn. A new data structure for representing sorted lists. Acta Informatica, 17:157–184, 1982.
D. Hutchinson, A. Maheshwari, J.-R. Sack, and R. Velicescu. Early experiences in implementing the buffer tree. In Proc. Workshop on Algorithm Engineering, pages 92–103, 1997.
D. Hutchinson, A. Maheshwari, and N. Zeh. An external-memory data structure for shortest path queries. In Proc. Annual Combinatorics and Computing Conference, LNCS 1627, pages 51–60, 1999.
C. Icking, R. Klein, and T. Ottmann. Priority search trees in secondary memory. In Proc. Graph-Theoretic Concepts in Computer Science, LNCS 314, pages 84–93, 1987.
I. Kamel and C. Faloutsos. On packing R-trees. In Proc. International Conference on Information and Knowledge Management, pages 490–499, 1993.
I. Kamel and C. Faloutsos. Hilbert R-tree: An improved R-tree using fractals. In Proc. International Conf. on Very Large Databases, pages 500–509, 1994.
P. C. Kanellakis, S. Ramaswamy, D. E. Vengroff, and J. S. Vitter. Indexing for data models with constraints and classes. Journal of Computer and System Sciences, 52(3):589–612, 1996.
K. V. R. Kanth and A. K. Singh. Optimal dynamic range searching in non-replicating index structures. In Proc. International Conference on Database Theory, LNCS 1540, pages 257–276, 1999.
N. Katayama and S. Satoh. The SR-tree: An index structure for high-dimensional nearest-neighbor queries. In Proc. SIGMOD Intl. Conf. on Management of Data, pages 369–380, 1997.
D. E. Knuth. Sorting and Searching, volume 3 of The Art of Computer Programming. Addison-Wesley, Reading MA, second edition, 1998.
G. Kollios, D. Gunopulos, and V. J. Tsotras. On indexing mobile objects. In Proc. ACM Symp. Principles of Database Systems, pages 261–272, 1999.
E. Koutsoupias and D. S. Taylor. Tight bounds for 2-dimensional indexing schemes. In Proc. ACM Symp. Principles of Database Systems, pages 52–58, 1998.
V. Kumar and E. Schwabe. Improved algorithms and data structures for solving graph problems in external memory. In Proc. IEEE Symp. on Parallel and Distributed Processing, pages 169–177, 1996.
S. T. Leutenegger, M. A. López, and J. Edgington. STR: A simple and efficient algorithm for R-tree packing. In Proc. IEEE International Conference on Data Engineering, pages 497–506, 1996.
D. Lomet and B. Salzberg. The hB-tree: A multiattribute indexing method with good guaranteed performance. ACM Transactions on Database Systems, 15(4):625–658, 1990.
A. Maheshwari and N. Zeh. External memory algorithms for outerplanar graphs. In Proc. Int. Symp. on Algorithms and Computation, LNCS 1741, pages 307–316, 1999.
A. Maheshwari and N. Zeh. I/O-efficient algorithms for graphs of bounded treewidth. In Proc. ACM-SIAM Symp. on Discrete Algorithms, pages 89–90, 2001.
J. Matouŝek. Efficient partition trees. Discrete Comput. Geom., 8:315–334, 1992.
E. McCreight. Priority search trees. SIAM Journal of Computing, 14(2):257–276, 1985.
K. Mehlhorn and S. Näher. Dynamic fractional cascading. Algorithmica, 5:215–241, 1990.
K. Mehlhorn and S. Näher. LEDA: A Platform for Combinatorial and Geometric Computing. Cambridge University Press, Cambridge, UK, 2000.
U. Meyer. External memory bfs on undirected graphs with bounded degree. In Proc. ACM-SIAM Symp. on Discrete Algorithms, pages 87–88, 2001.
D. R. Morrison. PATRICIA: Practical algorithm to retrieve information coded in alphanumeric. Journal of the ACM, 15:514–534, 1968.
K. Munagala and A. Ranade. I/O-complexity of graph algorithm. In Proc. ACM-SIAM Symp. on Discrete Algorithms, pages 687–694, 1999.
J. Nievergelt, H. Hinterberger, and K. Sevcik. The grid file: An adaptable, symmetric multikey file structure. ACM Transactions on Database Systems, 9(1):38–71, 1984.
J. Nievergelt and E. M. Reingold. Binary search tree of bounded balance. SIAM Journal of Computing, 2(1):33–43, 1973.
J. Nievergelt and P. Widmayer. Spatial data structures: Concepts and design choices. In M. van Kreveld, J. Nievergelt, T. Roos, and P. Widmayer, editors, Algorithmic Foundations of GIS, pages 153–197. Springer-Verlag, LNCS 1340, 1997.
M. H. Nodine, M. T. Goodrich, and J. S. Vitter. Blocking for external graph searching. Algorithmica, 16(2):181–214, 1996.
J. Orenstein. Spatial query processing in an object-oriented database system. In Proc. ACM SIGMOD Conf. on Management of Data, pages 326–336, 1986.
J. 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.
M. H. Overmars. The Design of Dynamic Data Structures Springer-Verlag, LNCS 156, 1983.
D. Pfoser, C. S. Jensen, and Y. Theodoridis. Novel approaches to the indexing of moving objects trajectories. In Proc. International Conf. on Very Large Databases, pages 395–406, 2000.
S. Ramaswamy and S. Subramanian. Path caching: A technique for optimal external searching. In Proc. ACM Symp. Principles of Database Systems, pages 25–35, 1994.
J. Robinson. The K-D-B tree: A search structure for large multidimensional dynamic indexes. In Proc. SIGMOD Intl. Conf. on Management of Data, pages 10–18, 1981.
N. Roussopoulos, S. Kelley, and F. Vincent. Nearest neighbor queries. In Proc. SIGMOD Intl. Conf. on Management of Data, pages 71–79, 1995.
N. Roussopoulos and D. Leifker. Direct spatial search on pictorial databases using packed R-trees. In Proc. SIGMOD Intl. Conf. on Management of Data, pages 17–31, 1985.
C. Ruemmler and J. Wilkes. An introduction to disk drive modeling. IEEE Computer, 27(3):17–28, 1994.
B. Salzberg and V. J. Tsotras. A comparison of access methods for time evolving data. ACM Computing Surveys, 31(2):158–221, 1999.
H. Samet. Applications of Spatial Data Structures: Computer Graphics, Image Processing, and GIS. Addison Wesley, MA, 1990.
H. Samet. The Design and Analyses of Spatial Data Structures. Addison Wesley, MA, 1990.
V. Samoladas and D. Miranker. A lower bound theorem for indexing schemes and its application to multidimensional range queries. In Proc. ACM Symp. Principles of Database Systems, pages 44–51, 1998.
P. Sanders. Fast priority queues for cached memory. In Proc. Workshop on Algorithm Engineering and Experimentation, LNCS 1619, pages 312–327, 1999.
N. Sarnak and R. E. Tarjan. Planar point location using persistent search trees. Communications of the ACM, 29:669–679, 1986.
B. Seeger and H.-P. Kriegel. The buddy-tree: An efficient and robust access method for spatial data base systems. In Proc. International Conf. on Very Large Databases, pages 590–601, 1990.
T. Sellis, N. Roussopoulos, and C. Faloutsos. The R+-tree: A dynamic index for multi-dimensional objects. In Proc. International Conf. on Very Large Databases, pages 507–518, 1987.
J. Snoeyink. Point location. In J. E. Goodman and J. O’Rourke, editors, Handbook of Discrete and Computational Geometry, chapter 30, pages 559–574. CRC Press LLC, Boca Raton, FL, 1997.
S. Subramanian and S. Ramaswamy. The P-range tree: A new data structure for range searching in secondary memory. In Proc. ACM-SIAM Symp. on Discrete Algorithms, pages 378–387, 1995.
J. D. Ullman and M. Yannakakis. The input/output complexity of transitive closure. Annals of Mathematics and Artificial Intellegence, 3:331–360, 1991.
J. Vahrenhold and K. H. Hinrichs. Planar point-location for large data sets: To seek or not to seek. In Proc. Workshop on Algorithm Engineering, 2000.
J. van den Bercken, B. Seeger, and P. Widmayer. A generic approach to bulk loading multidimensional index structures. In Proc. International Conf. on Very Large Databases, pages 406–415, 1997.
J. van den Bercken, B. Seeger, and P. Widmayer. A generic approach to processing non-equijoins. Technical Report 14, Philipps-Universität Marburg, Fachbereich Matematik und Informatik, 1998.
M. J. van Kreveld and M. H. Overmars. Divided k-d trees. Algorithmica, 6:840–858, 1991.
P. J. Varman and R. M. Verma. An efficient multiversion access structure. IEEE Transactions on Knowledge and Data Engineering, 9(3):391–409, 1997.
D. E. Vengroff. A transparent parallel I/O environment. In Proc. DAGS Symposium on Parallel Computation, 1994.
D. E. Vengroff and J. S. Vitter. Efficient 3-D range searching in external memory. In Proc. ACM Symp. on Theory of Computation, pages 192–201, 1996.
D. E. Vengroff and J. S. Vitter. I/O-efficient scientific computation using TPIE. In Proceedings of the Goddard Conference on Mass Storage Systems and Technologies, NASA Conference Publication 3340, Volume II, pages 553–570, 1996.
J. S. Vitter. External memory algorithms and data structures. In J. Abello and J. S. Vitter, editors, External Memory Algorithms and Visualization, pages 1–38. American Mathematical Society, DIMACS series in Discrete Mathematics and Theoretical Computer Science, 1999.
J. S. Vitter. Online data structures in external memory. In Proc. Annual International Colloquium on Automata, Languages, and Programming, LNCS 1644, pages 119–133, 1999.
J. S. Vitter and E. A. M. Shriver. Algorithms for parallel memory, I: Two-level memories. Algorithmica, 12(2–3):110–147, 1994.
S. Saltenis, C. S. Jensen, S. T. Leutenegger, and M. A. López. Indexing the positions of continuously moving objects. In Proc. SIGMOD Intl. Conf. on Management of Data, pages 331–342, 2000.
O. Wolfson, A. P. Sistla, S. Chamberlain, and Y. Yesha. Updating and querying databases that track mobile units. Distributed and Parallel Databases, 7(3):257–287, 1999.
N. Zeh. I/O-efficient planar separators and applications. Manuscript, 2001.
D. Zhang, A. Markowetz, V. Tsotras, D. Gunopulos, and B. Seeger. Efficient computation of temporal aggregates with range predicates. In Proc. ACM Symp. Principles of Database Systems, pages 237–245, 2001.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2001 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Arge, L. (2001). External Memory Data Structures. In: auf der Heide, F.M. (eds) Algorithms — ESA 2001. ESA 2001. Lecture Notes in Computer Science, vol 2161. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-44676-1_1
Download citation
DOI: https://doi.org/10.1007/3-540-44676-1_1
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-42493-2
Online ISBN: 978-3-540-44676-7
eBook Packages: Springer Book Archive