Skip to main content

Library that offers all types of Bloom filters, implemented in Rust

Project description

______  ______                          ___________ ______  
___  /_ ___  /______ ______ _______ ___ ___  /___(_)___  /_ 
__  __ \__  / _  __ \_  __ \__  __ `__ \__  / __  / __  __ \
_  /_/ /_  /  / /_/ // /_/ /_  / / / / /_  /  _  /  _  /_/ /
/_.___/ /_/   \____/ \____/ /_/ /_/ /_/ /_/   /_/   /_.___/ 

bloomlib: superfast Bloom filters for Python, optimized in Rust

Package PyPI Latest Release PyPI Downloads
Meta GitHub License

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

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

bloomlib-0.0.2.tar.gz (24.0 kB view hashes)

Uploaded Source

Built Distributions

bloomlib-0.0.2-cp39-none-win_amd64.whl (1.5 MB view hashes)

Uploaded CPython 3.9 Windows x86-64

bloomlib-0.0.2-cp39-cp39-manylinux_2_31_x86_64.whl (1.1 MB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.31+ x86-64

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