English

External-Memory Multimaps

Data Structures and Algorithms 2011-09-19 v2

Abstract

Many data structures support dictionaries, also known as maps or associative arrays, which store and manage a set of key-value pairs. A \emph{multimap} is generalization that allows multiple values to be associated with the same key. For example, the inverted file data structure that is used prevalently in the infrastructure supporting search engines is a type of multimap, where words are used as keys and document pointers are used as values. We study the multimap abstract data type and how it can be implemented efficiently online in external memory frameworks, with constant expected I/O performance. The key technique used to achieve our results is a combination of cuckoo hashing using buckets that hold multiple items with a multiqueue implementation to cope with varying numbers of values per key. Our external-memory results are for the standard two-level memory model.

Keywords

Cite

@article{arxiv.1104.5533,
  title  = {External-Memory Multimaps},
  author = {Elaine Angelino and Michael T. Goodrich and Michael Mitzenmacher and Justin Thaler},
  journal= {arXiv preprint arXiv:1104.5533},
  year   = {2011}
}

Comments

Accepted to ISAAC 2011. 22 pages, 6 figures

R2 v1 2026-06-21T18:00:11.829Z