Parallel and External-Memory Construction of Minimal Perfect Hash Functions With PTHash
A function f : U \to \lbrace 0,\ldots,n-1\rbrace f:U→{0,...,n-1} is a minimal perfect hash function for a set S \subseteq U S⊆U of size n n , if f f bijectively maps S S into the first n n natural numbers. These functions are important for many practical applications in computing, such as searc...
Gespeichert in:
Veröffentlicht in: | IEEE transactions on knowledge and data engineering 2024-03, Vol.36 (3), p.1249-1259 |
---|---|
Hauptverfasser: | , |
Format: | Artikel |
Sprache: | eng |
Schlagworte: | |
Online-Zugang: | Volltext bestellen |
Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
Zusammenfassung: | A function f : U \to \lbrace 0,\ldots,n-1\rbrace f:U→{0,...,n-1} is a minimal perfect hash function for a set S \subseteq U S⊆U of size n n , if f f bijectively maps S S into the first n n natural numbers. These functions are important for many practical applications in computing, such as search engines, computer networks, and databases. Several algorithms have been proposed to build minimal perfect hash functions that: scale well to large sets, retain fast evaluation time, and take very little space, e.g., 2 - 3 bits/key. PTHash is one such algorithm, achieving very fast evaluation in compressed space, typically many times faster than other techniques. In this work, we propose a new construction algorithm for PTHash enabling: (1) multi-threading , to either build functions more quickly or more space-efficiently, and (2) external-memory processing , to scale to inputs much larger than the available internal memory. Only few other algorithms in the literature share these features, despite of their practical impact. We conduct an extensive experimental assessment on large real-world string collections and show that, with respect to other techniques, PTHash is competitive in construction time and space consumption, but r |
---|---|
ISSN: | 1041-4347 1558-2191 |
DOI: | 10.1109/TKDE.2023.3303341 |