Multiple Set Matching and Pre-Filtering with Bloom Multifilters

by   Francesco Concas, et al.

Bloom filter is a space-efficient probabilistic data structure for checking elements' membership in a set. Given multiple sets, however, a standard Bloom filter is not sufficient when looking for the items to which an element or a set of input elements belong to. In this article, we solve multiple set matching problem by proposing two efficient Bloom Multifilters called Bloom Matrix and Bloom Vector. Both of them are space efficient and answer queries with a set of identifiers for multiple set matching problems. We show that the space efficiency can be optimized further according to the distribution of labels among multiple sets: Uniform and Zipf. While both of them are space efficient, Bloom Vector can efficiently exploit Zipf distribution of data for further space reduction. Our results also highlight that basic ADD and LOOKUP operations on Bloom Matrix are faster than on Bloom Vector. However, Bloom Matrix does not meet the theoretical false positive rate of less than 10^-2 for LOOKUP operations if the represented data or the labels are not uniformly distributed among the multiple sets. Consequently, we introduce Bloom Test which uses Bloom Matrix as the pre-filter structure to determine which structure is suitable for improved performance with an arbitrary input dataset.



page 8

page 12


Bloom Multifilters for Multiple Set Matching

Bloom filter is a space-efficient probabilistic data structure for check...

The Distributed Bloom Filter

The Distributed Bloom Filter is a space-efficient, probabilistic data st...

Bloom filter variants for multiple sets: a comparative assessment

In this paper we compare two probabilistic data structures for associati...

Matrix Bloom Filter: An Efficient Probabilistic Data Structure for 2-tuple Batch Lookup

With the growing scale of big data, probabilistic structures receive inc...

Ribbon filter: practically smaller than Bloom and Xor

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

On Occupancy Moments and Bloom Filter Efficiency

Two multivariate committee distributions are shown to belong to Berg's f...

Designing a Color Filter via Optimization of Vora-Value for Making a Camera more Colorimetric

The Luther condition states that if the spectral sensitivity responses o...
This week in AI

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