Skip to search boxSkip to navigationSkip to main content

Optimality in External Memory Hashing

  • Morten Skaarup Jensen
    ,
  • Rasmus Pagh
Research Output:
Journal Article or Conference Article in Journal
Journal article
Peer-review

Open access

Publication Information

Output type

Research Output:
Journal Article or Conference Article in Journal
Journal article
Peer-review

Original language

English

Pages from-to (Number of pages)

Pages 403-411 (9 pages)

Journal (Volume, Issue Number)

Algorithmica (Volume 52, Issue 3)

Publication milestones

  • Published - 2008

Publication status

Published - 2008

ISSN

0178-4617

Publication IDs

  • Scopus: 55249118921

Abstract

Hash tables on external memory are commonly used for indexing in database management systems. In this paper we present an algorithm that, in an asymptotic sense, achieves the best possible I/O and space complexities. Let B denote the number of records that fit in a block, and let N denote the total number of records. Our hash table uses 1+𝑂(1/√B) I/Os, expected, for looking up a record (no matter if it is present or not). To insert, delete or change a record that has just been looked up requires 1+𝑂(1/√B) I/Os, amortized expected, including I/Os for reorganizing the hash table when the size of the database changes. The expected external space usage is 1+𝑂(1/√B) times the optimum of N/B blocks, and just O(1) blocks of internal memory are needed.

Publication metrics

PlumX, opens in new tab

Citations
16
Captures
6