or
June 28, 2012 ยท View on GitHub
- ebloom ** Overview [[http://travis-ci.org/basho/ebloom][Travis-CI]] :: [[https://secure.travis-ci.org/basho/ebloom.png]]
=ebloom= is a NIF wrapper around a basic bloom filter.
** Quick Start You must have [[http://erlang.org/download.html][Erlang/OTP R13B04]] or later and a GNU-style build system to compile and run =ebloom=.
#+BEGIN_SRC shell git clone git://github.com/basho/ebloom.git cd ebloom make #+END_SRC
Start up an Erlang shell with the path to =ebloom= included.
#+BEGIN_SRC shell erl -pa path/to/ebloom/ebin #+END_SRC
Create a new bloom filter, insert elements, and test for an elements presence.
#+BEGIN_SRC erlang 1> PredictedElementCount=5. 5 2> FalsePositiveProbability=0.01.
3> RandomSeed=123. 123 4> {ok, Ref} = ebloom:new(PredictedElementCount, FalsePositiveProbability, RandomSeed). {ok,<<>>} 5> ebloom:insert(Ref, <<"abcdef">>). ok 6> true = ebloom:contains(Ref, <<"abcdef">>). true 7> false = ebloom:contains(Ref, <<"zzzzzz">>). false #+END_SRC
** Contributing We encourage contributions to =ebloom= from the community.
- Fork the =ebloom= repository on [[https://github.com/basho/ebloom][Github]].
- Clone your fork or add the remote if you already have a clone of the repository. #+BEGIN_SRC shell git clone git@github.com:yourusername/ebloom.git
or
git remote add mine git@github.com:yourusername/ebloom.git #+END_SRC 3) Create a topic branch for your change. #+BEGIN_SRC shell git checkout -b some-topic-branch #+END_SRC 4) Make your change and commit. Use a clear and descriptive commit message, spanning multiple lines if detailed explanation is needed. 5) Push to your fork of the repository and then send a pull-request through Github. #+BEGIN_SRC shell git push mine some-topic-branch #+END_SRC 6) A Basho engineer or community maintainer will review your patch and merge it into the main repository or send you feedback.