This repository contains source files for the Bloom filter indexing library. This library was originally created for IP address indexing in:
- IPFIXCol storage plugin LNFStore (https://github.com/CESNET/ipfixcol/tree/master/plugins/storage/lnfstore)
- FDistDump net-flow data querying tool (https://github.com/CESNET/fdistdump/)
-
Installation
-
API documentation
-
Example
-
Installation
Bloom filter indexing library could be installed in a common way:
./bootstrap.sh
./configure
make
sudo make install
For information about configuration options see:
./configure --help
- API documentation
Doxygen documentation in the html format could be find in doc/.
Usage of Bloom filter index simply consists in a few steps:
- Declare an empty index of type
bfi_index_t
. 2a) Initialize the index with givenestimated item count
andfalse positive probability
or 2b) load an existing index from a file. - Add elements into the index.
- Store the index into a file.
- Destroy the index.
It is also possible to clear the index (e.g. for new iteration of indexing) which provides an empty ready-to-use index (i.e. like index after initialization) or get count of stored elements in the index (e.g. for dynamic re-calculation of the Bloom filter parameters).
- Example
For examples of usage see FDistDump or LNFStore code.