A cuckoo filter is a space-efficient probabilistic data structure for testing whether an element belongs to a set, in the same role as a Bloom filter. A query returns either possibly in set or definitely not in set, so false positives are possible but false negatives are not. Unlike a Bloom filter, a cuckoo filter can also delete items, and for applications that store many items and aim at moderately low false positive rates it can use less space than a space-optimized Bloom filter. It stores short fingerprints of items in a hash table based on cuckoo hashing, split into buckets of some size b. Each item has two candidate buckets: the first comes from hashing the item, and the second is found by combining the first with a hash of the fingerprint using exclusive or, so either bucket can be computed from the other. Cuckoo filters were first described in 2014.
Facts
Time Complexity
Time Complexity (category) Connections
Credited To
Source Carnegie Mellon University: Cuckoo Filter: Practically Better Than Bloom
In Field
Source Cuckoo filter (Wikipedia)
Invented By
Source Carnegie Mellon University: Cuckoo Filter: Practically Better Than Bloom
Sources
1. Carnegie Mellon University: Cuckoo Filter: Practically Better Than Bloom
Carnegie Mellon UniversityBackground on cuckoo hashing
Although cuckoo hashing may execute a sequence of displacements, its amortized insertion time is O(1).
Credited To: Michael Mitzenmacher, Abstract
We propose a new data structure called the cuckoo filter that can replace Bloom filters for approximate set membership tests.
Invented By: Michael Mitzenmacher, Abstract
We propose a new data structure called the cuckoo filter that can replace Bloom filters for approximate set membership tests.
View the Source Cuckoo filter (Wikipedia)
In Group: Hashing and Membership Filter Algorithms, Lead paragraph
A cuckoo filter is an space-efficient probabilistic data structure that is used to test whether an element is a member of a set, like a Bloom filter does.
In Field: Algorithms and Complexity Theory, Lead paragraph
A cuckoo filter is an space-efficient probabilistic data structure that is used to test whether an element is a member of a set, like a Bloom filter does.
View the SourceReader Challenges (0)
No disputes yet. Spotted an error or a better source? Open the first one.
Sign in to dispute this or suggest a correction.