Insertion Time of Random Walk Cuckoo Hashing below the Peeling Threshold

02/11/2022
by   Stefan Walzer, et al.
0

When it comes to hash tables, the only truly respectable insertion time is O(1), possibly qualified as expected and/or amortised. While insertions into cuckoo hash tables indeed seem to take O(1) expected time in practice, only polylogarithmic guarantees are proven in all but the simplest of practically relevant cases. Given the widespread use of cuckoo hashing to implement compact dictionaries and Bloom filter alternatives, closing this gap is an important open problem for theoreticians. In this paper, we show that random walk insertions into cuckoo hash tables take O(1) expected amortised time when any number k ≥ 3 of hash functions is used and the load factor is below the corresponding peeling threshold (e.g. ≈ 0.81 for k = 3). To our knowledge, this is the first meaningful guarantee for constant time insertion for cuckoo hashing that works for k ∈{3,…,9}. In addition to being useful in its own right, we hope that our key-centred analysis method can be a stepping stone on the path to the true end goal: O(1) time insertions for all load factors below the load threshold (e.g. ≈ 0.91 for k = 3).

READ FULL TEXT

Please sign up or login with your details

Forgot password? Click here to reset