Nav apraksta

dstromberg 9606ba0024 Better duck typing for hashed objects 13 gadi atpakaļ
Makefile 0cf2a846ea clean rule removes seek.txt and array.txt, which are graphing temporaries 13 gadi atpakaļ
README 2c101e4dba Few minor README improvements 13 gadi atpakaļ
bloom_filter_mod.py 9606ba0024 Better duck typing for hashed objects 13 gadi atpakaļ
count-bits 5fb9908837 Larger blocks. Give a percentage of set/clear 13 gadi atpakaļ
gen-performance-graph 3c8ee83155 Misc graph formatting changes, including manually computing maximum y 13 gadi atpakaļ
test-bloom-filter 996179887e Basic graphing added - or rather, text file output for subsequent graphing 13 gadi atpakaļ
this-pylint c763fde8d6 Initial checkin 14 gadi atpakaļ

README


This bloom filter implementation:
1) Has a constructor that accepts a maximum comfortable number of members and maximum appropriate error (false positive) rate, and
derives the fiddly bits from that; most bloom filter modules ask the enduser to specify the fiddly bits themselves.
2) Has a nice test suite, including checks for error rate.
3) Is in pure Python that'll run on CPython 2.x, CPython 3.x, PyPy or Jython.
4) Has a pair of simple, fast hash functions that give a good error rate - they're better than many of the alternatives,
They're not Murmur or Jenkins, but the tests strongly suggest that they're working well.
5) Passes pylint and pep8.
6) Supports adding elements, testing for membership, and'ing sets and or'ing sets.

The code is derived from http://code.activestate.com/recipes/577686-bloom-filter/ and inherits that code's license.

For more about Bloom Filters:
http://en.wikipedia.org/wiki/Bloom_filter
http://spyced.blogspot.com/2009/01/all-you-ever-wanted-to-know-about.html