Go implementation of probabilistic high-performance data structure allowing for unknown-size data or stream input.
aronszanto/Dynamic-Size-Bloom-Filter
master
Name already in use
Code
-
Clone
Use Git or checkout with SVN using the web URL.
Work fast with our official CLI. Learn more.
- Open with GitHub Desktop
- Download ZIP
Sign In Required
Please sign in to use Codespaces.
Launching GitHub Desktop
If nothing happens, download GitHub Desktop and try again.
Launching GitHub Desktop
If nothing happens, download GitHub Desktop and try again.
Launching Xcode
If nothing happens, download Xcode and try again.
Launching Visual Studio Code
Your codespace will open once ready.
There was a problem preparing your codespace, please try again.
Latest commit
Git stats
Files
# Dynamic Size Bloom Filter ## Research Abstract A Bloom filter is a probabilistic data structure that stores elements with a constant bit/element ratio. Thus, a Bloom filter has several advantages: it has a nearly constant search time, and can store a large number inputs in a relatively small amount of memory. One of the disadvantages of traditional Bloom filters, however, is that the input size is required ahead of insertion. In this work, we develop a scalable Bloom filter, inspired by a paper by Almeida et al., that can take in a stream of inputs, as opposed to requiring a a definite input size a priori. Testing on commodity hardware gives performance of 400K inserts/sec and 1M lookups/sec under 0.001% false positive tolerance.
About
Go implementation of probabilistic high-performance data structure allowing for unknown-size data or stream input.