• Home
  • Search
  • External memory algorithms and data structures
  • Cite Icon712
  • https://doi.org/10.1145/384192.384193Copy DOI Icon

External memory algorithms and data structures

Show More
  • Abstract
  • Literature Map
  • References
  • Citations
  • Similar Papers
Abstract

Data sets in large applications are often too massive to fit completely inside the computers internal memory. The resulting input/output communication (or I/O) between fast internal memory and slower external memory (such as disks) can be a major performance bottleneck. In this article we survey the state of the art in the design and analysis of external memory (or EM) algorithms and data structures, where the goal is to exploit locality in order to reduce the I/O costs. We consider a variety of EM paradigms for solving batched and online problems efficiently in external memory. For the batched problem of sorting and related problems such as permuting and fast Fourier transform, the key paradigms include distribution and merging. The paradigm of disk striping offers an elegant way to use multiple disks in parallel. For sorting, however, disk striping can be nonoptimal with respect to I/O, so to gain further improvements we discuss distribution and merging techniques for using the disks independently. We also consider useful techniques for batched EM problems involving matrices (such as matrix multiplication and transposition), geometric data (such as finding intersections and constructing convex hulls), and graphs (such as list ranking, connected components, topological sorting, and shortest paths). In the online domain, canonical EM applications include dictionary lookup and range searching. The two important classes of indexed data structures are based upon extendible hashing and B-trees. The paradigms of filtering and bootstrapping provide a convenient means in online data structures to make effective use of the data accessed from disk. We also reexamine some of the above EM problems in slightly different settings, such as when the data items are moving, when the data items are variable-length (e.g., text strings), or when the allocated amount of internal memory can change dynamically. Programming tools and environments are available for simplifying the EM programming task. During the course of the survey, we report on some experiments in the domain of spatial databases using the TPIE system (transparent parallel I/O programming environment). The newly developed EM algorithms and data structures that incorporate the paradigms we discuss are significantly faster than methods currently used in practice.

Similar Papers
  • Conference Article
  • Citations13

Dynamic external hashing

  • Aug 11, 2009
  • Zhewei Wei +2
  • Research Article
  • Citations2

Algorithm Engineering

  • Mar 31, 2008
  • Oberwolfach Reports
  • Petra Mutzel +3
  • Book Chapter
  • Citations14

On the Complexity of List Ranking in the Parallel External Memory Model

  • Jan 01, 2014
  • Riko Jacob +2
  • Conference Article
  • Citations3

Comparison of Static Neural Network with External Memory and RNNs for Deterministic Context Free Language Learning

  • Jul 01, 2018
  • Ying Ma +1
  • Book Chapter

Chapter 8 - Memory and Sound

  • Jan 01, 2003
  • Programming PIC Microcontrollers with PICBASIC
  • Chuck Hellebuyck
  • Conference Article
  • Citations10

A parallel buffer tree

  • Jun 25, 2012
  • Nodari Sitchinava +1
  • Conference Article
  • Citations75

Efficient searching with linear constraints

  • May 01, 1998
  • Pankaj K Agarwal +4
  • Book Chapter

Results: Attitudes and Beliefs About Internal and External Memory

  • Jan 01, 2018
  • Jason R Finley +2
  • Conference Article

A High Throughput Diamond Search Architecture with Shift Mechanism for 720p Motion Estimation

  • Sep 01, 2014
  • Gaurav Srivastava +2
  • Conference Article
  • Citations21

2-3 Cuckoo Filters for Faster Triangle Listing and Set Intersection

  • May 09, 2017
  • David Eppstein +3
  • Conference Article
  • Citations5

External Memory Three-Sided Range Reporting and Top-k Queries with Sublogarithmic Updates.

  • Jan 01, 2016
  • DROPS (Schloss Dagstuhl – Leibniz Center for Informatics)
  • Gerth Stølting Brodal
  • Conference Article
  • Citations48

XFastMesh: fast view-dependent meshing from external memory

  • Oct 27, 2002
  • Christopher Decoro +1
  • Book Chapter

Introduction and Method

  • Jan 01, 2018
  • Jason R Finley +2
  • Research Article
  • Citations42

Suffix Array Construction in External Memory Using D-Critical Substrings

  • Jan 01, 2014
  • ACM Transactions on Information Systems
  • Ge Nong +3
  • Book Chapter
  • Citations2

Theoretical Perspectives from Other Disciplines

  • Jan 01, 2018
  • Jason R Finley +2
Cactus Communications logo

Copyright 2026 Cactus Communications. All rights reserved.