Parallel And External-memory Construction Of Minimal Perfect Hash Functions With Pthash | Awesome Learning to Hash Add your paper to Learning2Hash

Parallel And External-memory Construction Of Minimal Perfect Hash Functions With Pthash

Pibiri Giulio Ermanno, Trani Roberto. Arxiv 2021

[Paper]    
ARXIV Independent

A function \(f : U \to \{0,\ldots,n-1\}\) is a minimal perfect hash function for a set \(S \subseteq U\) of size \(n\), if \(f\) bijectively maps \(S\) into the first \(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 several 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 big 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 retains 2

Similar Work