Space Efficient Hash Tables with Worst Case Constant Access Time

@article{Fotakis2004SpaceEH,
  title={Space Efficient Hash Tables with Worst Case Constant Access Time},
  author={Dimitris Fotakis and R. Pagh and Peter Sanders and Paul G. Spirakis},
  journal={Theory of Computing Systems},
  year={2004},
  volume={38},
  pages={229-248}
}
Abstract We generalize Cuckoo Hashing to d-ary Cuckoo Hashing and show how this yields a simple hash table data structure that stores n elements in (1 + ε)n memory cells, for any constant ε > 0. Assuming uniform hashing, accessing or deleting table entries takes at most d=O (ln (1/ε)) probes and the expected amortized insertion time is constant. This is the first dictionary that has worst case constant access time and expected constant update time, works with (1 + ε)n space, and supports… 
History-Independent Cuckoo Hashing
TLDR
A practical history-independentdynamic dictionary based on cuckoo hashing is constructed, which enjoys most of the attractive properties of cucko hashing, in particular, no dynamic memory allocation is required, updates are performed in expected amortized constant time, and membership queries are performing in worst case constant time.
Backyard Cuckoo Hashing: Constant Worst-Case Operations with a Succinct Representation
TLDR
This paper construction is a two-level variant of cuckoo hashing, augmented with a ``backyard'' that handles a large fraction of the elements, together with a de-amortized perfect hashing scheme for eliminating the dependency on $\boldsymbol{n}$ memory words, and guarantees constant-time operations in the worst case with high probability.
Linear probing with constant independence
TLDR
It is shown in this paper that linear probing using a pairwise independent family may have expected logarithmic cost per operation, and it is shown that 5-wise independence is enough to ensure constant expected time per operation.
On the insertion time of random walk cuckoo hashing
TLDR
If the number of hash functions d ≥ dε = O(1), then the expected insertion time for Random Walk Insertion to add items when d’ > 2 is O(1) per item.
Insertion Time of Random Walk Cuckoo Hashing below the Peeling Threshold
TLDR
This paper shows 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.
Linear Probing with Constant Independence
TLDR
It is shown in this paper that linear probing using a pairwise independent family may have expected logarithmic cost per operation, and that 5-wise independence is enough to ensure constant expected time per operation.
Better GPU Hash Tables
TLDR
This work revisits the problem of building static hash tables on the GPU and design and builds three bucketed hash tables that use different probing schemes that outperforms alternative methods that use power-of-two choices, iceberg hashing, and a cuckoo hash table that uses a bucket size one.
A Seven-Dimensional Analysis of Hashing Methods and its Implications on Query Processing
TLDR
It is shown that a right or wrong decision in picking the right hashing scheme and hash function combination may lead to significant difference in performance, and that hashing should be considered a white box before blindly using it in applications, such as query processing.
De-amortized Cuckoo Hashing: Provable Worst-Case Performance and Experimental Results
TLDR
The theoretical analysis and experimental results indicate that the scheme is highly efficient, and provides a practical alternative to the only other known approach for constructing dynamic dictionaries with such worst case guarantees, due to Dietzfelbinger and Meyer auf der Heide.
A further analysis of Cuckoo Hashing with a Stash and Random Graphs of Excess r
TLDR
It is shown that the same bounds on the failure probability hold even without this search process and thus, the performance increases, and some explicit asymptotic approximations concerning the number of usual resp.
...
1
2
3
4
5
...

References

SHOWING 1-10 OF 46 REFERENCES
Cuckoo hashing
Uniform hashing in constant time and linear space
TLDR
This paper presents an almost ideal solution to this problem: a hash function that, on any set of n inputs, behaves like a truly random function with high probability, can be evaluated in constant time on a RAM, and can be stored in O(n) words, which is optimal.
Dynamic perfect hashing: upper and lower bounds
TLDR
An Omega (log n) lower bound is proved for the amortized worst-case time complexity of any deterministic algorithm in a class of algorithms encompassing realistic hashing-based schemes.
Multilevel adaptive hashing
TLDR
According to the analysis, with the Multilevel Hashing Algorithm it is possible to build a dictionary that is able to answer 20 parallel searches among 64,000 entries in less than 5 ps using relatively inexpensive hardware.
Optimal Arrangement of Keys in a Hash Table
TLDR
It is shown that arrangements minimizing either the average or worst-case number of probes required to retrieve any key in the table can be found using an algorithm for the assignment problem.
Simple Minimal Perfect Hashing in Less Space
TLDR
A simple randomized algorithm that, given a set S ⊆ U of size n, works in O(n) expected time and computes a minimal perfect hash function for S whose representation is a table of at most (2+Ɛ)n integers in the range {0,.
Compact Hash Tables Using Bidirectional Linear Probing
  • J. Cleary
  • Computer Science
    IEEE Trans. Computers
  • 1984
An algorithm is developed which reduces the memory requirements of hash tables. Thisis achieved by storing only a part of each key along with a few; ezra bits needed to ensure that all keys are
Succinct Dynamic Dictionaries and Trees
TLDR
It is shown that a binary tree on n nodes, where each node has b = O(lg n)-bit data stored at it, can be maintained under node insertions while supporting navigation in O(1) time and updates in O((lg lg n)1+Ɛ) amortised time, for any constant Ɛ > 0.
Almost random graphs with simple hash functions
TLDR
The main new technique is the combined analysis of the graph structure and the inner structure of the hash functions, as well as a new way of looking at the cycle structure of random (multi)graphs.
LOW REDUNDANCY IN STATIC DICTIONARIES WITH CONSTANT QUERY TIME
TLDR
It is shown that on a unit cost RAM with word size Θ(log |U |), a static dictionary for n-element sets with constant worst case query time can be obtained using B+O(log log |U|)+o(n) bits of storage, where B e is the minimum number of bits needed to represent all nelement subsets of U.
...
1
2
3
4
5
...