Skip to content

An implementation of basic Bloom Filter and Block Bloom Filter in C++

Notifications You must be signed in to change notification settings

Haozh20/BloomFilter

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

BloomFilter

An implementation of basic Bloom Filter and Block Bloom Filter in C++

The repository is available here

Command Line Interface

To make the command line interface work, execute the following two commands.

 shopt -s expand_aliases
source .bash_aliases 

Basic Bloom Filter

Insert

To insert in the Basic Bloom Filter, run-

bf build -k <key file> -f <fpr> -n <num. distinct keys> -o <output file>

This command reads in the keys in the file <key file>, which contains <num. distinct keys> distinct input keys, and constructs a bloom filter with a target false positive rate of <fpr>. The constructed Bloom filter is written to the file <output file>.

Query

To query the Basic Bloom Filter, run-

bf query -i <input file> -q <queries>

This command reads in the serialized input file (created by the build command above), and issue each of the queries in the query file.

Blocked Bloom Filter

Insert

To insert in the Blocked Bloom Filter, run-

bbf build -k <key file> -f <fpr> -n <num. distinct keys> -o <output file>

This command reads in the keys in the file <key file>, which contains <num. distinct keys> distinct input keys, and constructs a blocked bloom filter with a target false positive rate of <fpr>. The constructed Bloom filter is written to the file <output file>.

Query

To query the Blocked Bloom Filter, run-

bbf query -i <input file> -q <queries>

This command reads in the serialized input file (created by the build command above), and issue each of the queries in the query file.

About

An implementation of basic Bloom Filter and Block Bloom Filter in C++

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 87.3%
  • Python 6.6%
  • C 3.4%
  • Shell 2.7%