Prefix Filter: Practically and Theoretically Better Than Bloom

by   Tomer Even, et al.

Many applications of approximate membership query data structures, or filters, require only an incremental filter that supports insertions but not deletions. However, the design space of incremental filters is missing a "sweet spot" filter that combines space efficiency, fast queries, and fast insertions. Incremental filters, such as the Bloom and blocked Bloom filter, are not space efficient. Dynamic filters (i.e., supporting deletions), such as the cuckoo or vector quotient filter, are space efficient but do not exhibit consistently fast insertions and queries. In this paper, we propose the prefix filter, an incremental filter that addresses the above challenge: (1) its space (in bits) is similar to state-of-the-art dynamic filters; (2) query throughput is high and is comparable to that of the cuckoo filter; and (3) insert throughput is high with overall build times faster than those of the vector quotient filter and cuckoo filter by 1.39×-1.46× and 3.2×-3.5×, respectively. We present a rigorous analysis of the prefix filter that holds also for practical set sizes (i.e., n=2^25). The analysis deals with the probability of failure, false positive rate, and probability that an operation requires accessing more than a single cache line.



page 1

page 2

page 3

page 4


Telescoping Filter: A Practical Adaptive Filter

Filters are fast, small and approximate set membership data structures. ...

Ribbon filter: practically smaller than Bloom and Xor

Filter data structures over-approximate a set of hashable keys, i.e. set...

Don't Thrash: How to Cache Your Hash on Flash

This paper presents new alternatives to the well-known Bloom filter data...

Concurrent Expandable AMQs on the Basis of Quotient Filters

A quotient filter is a cache efficient AMQ data structure. Depending on ...

In oder Aus

Bloom filters are data structures used to determine set membership of el...

Efficient method for parallel computation of geodesic transformation on CPU

This paper introduces a fast Central Processing Unit (CPU) implementatio...

Bridging the Gap Between Theory and Practice on Insertion-Intensive Database

With the prevalence of online platforms, today, data is being generated ...

Code Repositories


Prefix Filter: Practically and Theoretically Better Than Bloom.

view repo
This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.