The Cuckoo Filter: It’s Better Than Bloom
نویسندگان
چکیده
Approximate set-membership tests, exemplified by Bloom filters [1], have numerous applications in networking and distributed systems. A Bloom filter is a compact data structure to quickly answer if a given item is in a set with some small false positive probability ε . Due to its simplicity and high space efficiency, Bloom filters become widely used in network traffic measurement, packet routing, distributed caching, network intrusion detection, distributed joins in databases and so on.
منابع مشابه
A Cuckoo Filter Modification Inspired by Bloom Filter
Probabilistic data structures are so popular in membership queries, network applications, and so on. Bloom Filter and Cuckoo Filter are two popular space efficient models that incorporate in set membership checking part of many important protocols. They are compact representation of data that use hash functions to randomize a set of items. Being able to store more elements while keeping a reaso...
متن کاملCuckoo Filter: Simplification and Analysis
The cuckoo filter data structure of Fan, Andersen, Kaminsky, and Mitzenmacher (CoNEXT 2014) performs the same approximate set operations as a Bloom filter in less memory, with better locality of reference, and adds the ability to delete elements as well as to insert them. However, until now it has lacked theoretical guarantees on its performance. We describe a simplified version of the cuckoo f...
متن کاملImproving counting Bloom filter performance with fingerprints
a r t i c l e i n f o a b s t r a c t Bloom filters (BFs) are used in many applications for approximate check of set membership. Counting Bloom filters (CBFs) are an extension of BFs that enable the deletion of entries at the cost of additional storage requirements. Several alternatives to CBFs can be used to reduce the storage overhead. For example schemes based on d-left hashing or Cuckoo has...
متن کاملDesign and Implementation of Signatures for Transactional Memory Systems
Transactional Memory (TM) systems ease multithreaded application development by giving the programmer the ability to specify that some regions of code, called transactions, must be executed atomically. To achieve high efficiency, TM systems optimistically try to execute multiple transactions concurrently and either stall or abort some of them if a conflict occurs. A conflict happens if two or m...
متن کاملEMOMA: Exact Match in One Memory Access
An important function in modern routers and switches is to perform a lookup for a key. Hash-based methods, and in particular cuckoo hash tables, are popular for such lookup operations, but for large structures stored in off-chip memory, such methods have the downside that they may require more than one off-chip memory access to perform the key lookup. Although the number of off-chip memory acce...
متن کامل