Fast Insertion for Bucketized Cuckoo Hashing

📅 2026-07-27
📈 Citations: 0
Influential: 0
📄 PDF
🤖 AI Summary
This work addresses the inefficiency of insertions in bucketed cuckoo hashing under high load factors by proposing a novel insertion algorithm equipped with a prediction mechanism. By employing an improved random walk strategy, the method achieves—for the first time—a polynomial expected insertion time of $O(\delta^{-1}(\varepsilon^*)^{-1})$ with respect to $(\varepsilon^*)^{-1}$ when the load factor approaches the theoretical optimum $1 - (1+\delta)\varepsilon^*$, where $\delta \in [0.99^\ell, 1]$. It also guarantees $O(1)$ amortized expected eviction cost. Furthermore, during queries, the algorithm predicts the correct bucket for an element with probability $1 - o(1)$, enabling successful lookups with only $1 + o(1)$ bucket accesses and thereby significantly enhancing query performance.
📝 Abstract
Bucketized cuckoo hashing is a practically efficient hash table scheme in which each object $u$ is stored in one of two buckets $h_1(u), h_2(u)$ of capacity $\ell$. For any bucket size $\ell\in\mb{N}$, there is a threshold $ε^*(\ell)=(2/e)^\ell\mathrm{poly}(\ell)$ for which there exists a way to fill the hash table to any load factor less than $1-ε^*$ with low probability of an error. Queries and deletions only need to check two buckets to find whether an object exists. Our contribution is to give a new insertion procedure for bucketized cuckoo hashing. For any $δ\in[.99^\ell,1]$, our algorithm can fill the hash table to load factor $1-ε=1-(1+δ)(ε^*)$ with an expected run time of $O(δ^{-1}(ε^*)^{-1})$ per insertion. This gives the first $\mathrm{poly}(ε^{-1})$ insertion time bound, and the first $f(ε^{-1})$ time bound for load factors that are very close to the optimal threshold. Additionally, our algorithm (which can be viewed as a variation of the classic random-walk algorithm) comes with a very strong amortized guarantee: it performs $O(1)$ amortized expected evictions per insertion. Furthermore, we show that the traditional random-walk algorithm cannot match this guarantee. Finally, our insertion protocol also comes with the feature that, for any key $u$ in the hash table, the query algorithm can \emph{guess} which of the two bins $h_1(u), h_2(u)$ the key $u$ is in with probability $1 - o(1)$ of being correct. Thus positive queries can complete in $1 + o(1)$ expected bin accesses.
Problem

Research questions and friction points this paper is trying to address.

bucketized cuckoo hashing
insertion time
load factor
hash table
amortized evictions
Innovation

Methods, ideas, or system contributions that make the work stand out.

bucketized cuckoo hashing
fast insertion
amortized eviction
load factor threshold
probabilistic query optimization
🔎 Similar Papers
2024-01-25IEEE Annual Symposium on Foundations of Computer ScienceCitations: 4