Affiliation:
1. University of Toronto, Toronto, Denmark
2. IT University of Copenhagen, Copenhagen, Denmark
3. Universidad Politecnica de Madrid, Madrid, Denmark
4. University of Copenhagen, Copenhagen, Denmark
Abstract
Filter data structures have been used ubiquitously since the 1970s to answer approximate set-membership queries in various areas of computer science including architecture, networks, operating systems, and databases. Such filters need to be allocated with a given capacity in advance to provide a guarantee over the false positive rate. In many applications, however, the data size is not known in advance, requiring filters to dynamically expand. This paper shows that existing methods for expanding filters exhibit at least one of the following flaws: (1) they entail an expensive scan over the whole data set, (2) they require a lavish memory footprint, (3) their query, delete and/or insertion performance plummets, (4) their false positive rate skyrockets, and/or (5)~they cannot expand indefinitely.
We introduce InfiniFilter, a new method for expanding filters that addresses these shortcomings. InfiniFilter is a hash table that stores a fingerprint for each entry. It doubles in size when it reaches capacity, and it sacrifices one bit from each fingerprint to map it to the expanded hash table. The core novelty is a new and flexible hash slot format that sets longer fingerprints to newer entries. This keeps the average fingerprint length long and thus the false positive rate stable. At the same time, InfiniFilter provides stable insertion/query/delete performance as it is comprised of a unified hash table. We implement InfiniFilter on top of Quotient Filter, and we demonstrate theoretically and empirically that it offers superior cost properties compared to existing methods: it better scales performance, the false positive rate, and the memory footprint, all at the same time.
Funder
Agencia Estatal de Investigación
Madrid Community research project TAPIR-CM
Villum Fonden
Publisher
Association for Computing Machinery (ACM)
Reference92 articles.
1. Paulo Sé rgio Almeida , Carlos Baquero , Nuno Preguicc a, and David Hutchison . 2007 . Scalable Bloom Filters. Inform. Process. Lett . (2007). Paulo Sé rgio Almeida, Carlos Baquero, Nuno Preguicc a, and David Hutchison. 2007. Scalable Bloom Filters. Inform. Process. Lett. (2007).
2. FAWN
3. Apache. 2023 a. Cassandra. http://cassandra.apache.org (2023). Apache. 2023 a. Cassandra. http://cassandra.apache.org (2023).
4. Apache. 2023 b. HBase. http://hbase.apache.org/ (2023). Apache. 2023 b. HBase. http://hbase.apache.org/ (2023).
5. LinkBench
Cited by
9 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献