Skip to main content
______  ______                          ___________ ______  
___  /_ ___  /______ ______ _______ ___ ___  /___(_)___  /_ 
__  __ \__  / _  __ \_  __ \__  __ `__ \__  / __  / __  __ \
_  /_/ /_  /  / /_/ // /_/ /_  / / / / /_  /  _  /  _  /_/ /
/_.___/ /_/   \____/ \____/ /_/ /_/ /_/ /_/   /_/   /_.___/ 

bloomlib: superfast Bloom filters for Python, optimized in Rust

Testing coverage
Package PyPI Latest Release PyPI Downloads
status dependencies
Meta GitHub License implementation versions
Social tweet xfollow

bloomlib is a Python package that provides superfast Bloom filters, designed to optimize your applications in an easy and intuitive way. It aims to be the go-to package to build and use Bloom Filters that make your applications superfast, memory-efficient and user-friendly.

pip install bloomlib

Table of Contents

Main Features

  • 🦀 Built in Rust
  • ⚡ Highly optimized for speed and memory-efficiency
  • 👨‍🎨 User-friendly

Usage Example

from bloomlib import BloomFilter

# 1. Create the filter
bf = BloomFilter(expected_number_of_items=1_000, desired_false_positive_rate=0.05)

# 2. Add items
for i in range(100):
    bf.add(item=i)

# 3. Check if an item is contained; False means definitely not, True means "maybe" 
if (bf.contains(item=42)):
    print("This item may be in filter")
else:
    print("This item is definitely not in the filter")

Installation

pip install bloomlib

The source code is currently hosted on GitHub at: https://github.com/mike-huls/bloomlib

Binary installers for the latest released version are available at the Python Package Index (PyPI).

Dependencies

Bloomlib has no Python dependencies

License

MIT

Documentation

🔨 Under construction

Development

Find the changelog and list of upcoming features here.
Contributions are always welcome; feel free to submit bug reports, bug fixes, feature requests, documentation improvements or enhancements!


Go to Top

Metadata

Release files for bloomlib 0.0.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for bloomlib 0.0.3
File Size Uploaded
bloomlib-0.0.3.tar.gz 15.9 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for bloomlib 0.0.3
File Interpreter ABI Platform
bloomlib-0.0.3-cp39-cp39-manylinux_2_34_x86_64.whl CPython 3.9 CPython 3.9 Linux glibc 2.34+ x86-64 Details

Total release size: 16.2 MB

Release files / bloomlib-0.0.3.tar.gz

Download URL bloomlib-0.0.3.tar.gz
Size 15.9 MB
Tags Source
SHA-256 checksum
How to use checksums
e6239dc2de24a0c249918bf9ecdd1022c71db3507ac449bb590c3ba7a8dfc48c
BLAKE2b-256 checksum
How to use checksums
ba1eb0887395b191b441ce30ff133feb42a1a3ede4153913f6014eb06f317b7c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.7.4

Release files / bloomlib-0.0.3-cp39-cp39-manylinux_2_34_x86_64.whl

Download URL bloomlib-0.0.3-cp39-cp39-manylinux_2_34_x86_64.whl
Size 260.1 kB
Tags CPython 3.9 Linux glibc 2.34+ x86-64
SHA-256 checksum
How to use checksums
a6443429eb2ca695b71734d61a8fe81362477d1d03b139b115a2c3cd8e50bb86
BLAKE2b-256 checksum
How to use checksums
33972010cda687415abcd37c91b8c095fa4a09c1b39643975b5fca0d064fbd57
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.7.4

Release history Release notifications | RSS feed

This release

0.0.3 This release

2 release files

0.0.2

3 release files

0.0.1

2 release files

0.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page