More Robust Hashing: Cuckoo Hashing with a Stash

Adam Kirsch, Michael Mitzenmacher, and Udi Wieder

Abstract

Cuckoo hashing holds great potential as a high-performance hashing scheme for real applications. Up to this point, the greatest drawback of cuckoo hashing appears to be that there is a polynomially small but practically significant probability that a failure occurs during the insertion of an item, requiring an expensive rehashing of all items in the table. In this paper, we show that this failure probability can be dramatically reduced by the addition of a very small constant-sized stash. We demonstrate both analytically and through simulations that stashes of size equivalent to only three or four items yield tremendous improvements, enhancing cuckoo hashing's practical viability in both hardware and software. Our analysis naturally extends previous analyses of multiple cuckoo hashing variants, and the approach may prove useful in further related schemes.

Note: The conference version has a few errors. Below is the full version.

Details

Publication typeInproceedings
Published inESA '08: Proceedings of the 16th annual European symposium on Algorithms
Pages611–622
ISBN978-3-540-87743-1
AddressBerlin, Heidelberg
PublisherSpringer-Verlag
> Publications > More Robust Hashing: Cuckoo Hashing with a Stash