Skip to main content

Pure Python Bloom Filter module

Project description

A pure python bloom filter (low storage requirement, probabilistic set datastructure) is provided. It is known to work on CPython 3.x, Pypy, and Jython.

Includes mmap, in-memory and disk-seek backends.

This project builds on drs-bloom-filter and bloom_filter_mod. Credits and links can be found in AUTHORS.md.

Usage

The user specifies the desired maximum number of elements and the desired maximum false positive probability, and the module calculates the rest.

from bloom_filter2 import BloomFilter

# instantiate BloomFilter with custom settings,
# max_elements is how many elements you expect the filter to hold.
# error_rate defines accuracy; You can use defaults with
# `BloomFilter()` without any arguments. Following example
# is same as defaults:
bloom = BloomFilter(max_elements=10000, error_rate=0.1)

# Test whether the bloom-filter has seen a key:
assert "test-key" not in bloom

# Mark the key as seen
bloom.add("test-key")

# Now check again
assert "test-key" in bloom

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

bloom-filter2-2.0.0-1.tar.gz (6.6 kB view details)

Uploaded Source

Built Distribution

bloom_filter2-2.0.0-py3-none-any.whl (6.8 kB view details)

Uploaded Python 3

File details

Details for the file bloom-filter2-2.0.0-1.tar.gz.

File metadata

  • Download URL: bloom-filter2-2.0.0-1.tar.gz
  • Upload date:
  • Size: 6.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.4.2 requests/2.22.0 setuptools/45.2.0 requests-toolbelt/0.8.0 tqdm/4.30.0 CPython/3.8.5

File hashes

Hashes for bloom-filter2-2.0.0-1.tar.gz
Algorithm Hash digest
SHA256 310e5d3aa15be6e3d2285a7111f60cc44a1f500159412f2c72d155f43037cefd
MD5 5c9dd90c629e42d51bebf7fbafdc7930
BLAKE2b-256 2b5d8de4a849ebe212217e6d8f4798a6918d4035e741c44730da81272f170b47

See more details on using hashes here.

File details

Details for the file bloom_filter2-2.0.0-py3-none-any.whl.

File metadata

  • Download URL: bloom_filter2-2.0.0-py3-none-any.whl
  • Upload date:
  • Size: 6.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.4.2 requests/2.22.0 setuptools/45.2.0 requests-toolbelt/0.8.0 tqdm/4.30.0 CPython/3.8.5

File hashes

Hashes for bloom_filter2-2.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f9d3a3a44ae917ab9c13f71b542ac88b863f0cf4e64afbca48777cf0d5310c93
MD5 295ef3562662feedf0245deca6ab5356
BLAKE2b-256 52d7871408c1c1230af64eb00e2064f6e8a065ae652f17f010b3f4f102e5fbac

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page