Interesting Esoterica

Cuckoo Filter: Simplification and Analysis

Article by David Eppstein
  • Published in 2016
  • Added on
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 filter using fewer hash function calls per query. With this simplification, we provide the first theoretical performance guarantees on cuckoo filters, showing that they succeed with high probability whenever their fingerprint length is large enough.

Links

Other information

key
CuckooFilterSimplificationandAnalysis
type
article
date_added
2017-05-23
date_published
2016-10-09

BibTeX entry

@article{CuckooFilterSimplificationandAnalysis,
	key = {CuckooFilterSimplificationandAnalysis},
	type = {article},
	title = {Cuckoo Filter: Simplification and Analysis},
	author = {David Eppstein},
	abstract = {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 filter using fewer hash function calls per query. With this
simplification, we provide the first theoretical performance guarantees on
cuckoo filters, showing that they succeed with high probability whenever their
fingerprint length is large enough.},
	comment = {},
	date_added = {2017-05-23},
	date_published = {2016-10-09},
	urls = {http://arxiv.org/abs/1604.06067v1,http://arxiv.org/pdf/1604.06067v1},
	collections = {Animals,Basically computer science},
	url = {http://arxiv.org/abs/1604.06067v1 http://arxiv.org/pdf/1604.06067v1},
	urldate = {2017-05-23},
	archivePrefix = {arXiv},
	eprint = {1604.06067},
	primaryClass = {cs.DS},
	year = 2016
}