3.5-Way Cuckoo Hashing for the Price of 2-and-a-Bit

14Citations
Citations of this article
13Readers
Mendeley users who have this article in their library.
Get full text

Abstract

The study of hashing is closely related to the analysis of balls and bins; items are hashed to memory locations much as balls are thrown into bins. In particular, Azar et. al. [2] considered putting each ball in the less-full of two random bins. This lowers the probability that a bin exceeds a certain load from exponentially small to doubly exponential, giving maximum load loglogn+O(1) with high probability. Cuckoo hashing [20] draws on this idea. Each item is hashed to two buckets of capacity k. If both are full, then the insertion procedure moves previously-inserted items to their alternate buckets to make space for the new item. In a natural implementation, the buckets are represented by partitioning a fixed array of memory into non-overlapping blocks of size k. An item is hashed to two such blocks and may be stored at any location within either one. We analyze a simple twist in which each item is hashed to two arbitrary size-k memory blocks. (So consecutive blocks are no longer disjoint, but rather overlap by k-1 locations.) This twist increases the space utilization from 1-(2/e+o(1)) k to 1-(1/e+o(1))1.59k in general. For k=2, the new method improves utilization from 89.7% to 96.5%, yet lookups access only two items at each of two random locations. This result is surprising because the opposite happens in the non-cuckoo setting; if items are not moved during later insertions, then shifting from non-overlapping to overlapping blocks makes the distribution less uniform. © 2009 Springer Berlin Heidelberg.

Cite

CITATION STYLE

APA

Lehman, E., & Panigrahy, R. (2009). 3.5-Way Cuckoo Hashing for the Price of 2-and-a-Bit. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) (Vol. 5757 LNCS, pp. 671–681). https://doi.org/10.1007/978-3-642-04128-0_60

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free