Library that offers all types of Bloom filters, implemented in Rust
Project description
______ ______ ___________ ______
___ /_ ___ /______ ______ _______ ___ ___ /___(_)___ /_
__ __ \__ / _ __ \_ __ \__ __ `__ \__ / __ / __ __ \
_ /_/ /_ / / /_/ // /_/ /_ / / / / /_ / _ / _ /_/ /
/_.___/ /_/ \____/ \____/ /_/ /_/ /_/ /_/ /_/ /_.___/
bloomlib: superfast Bloom filters for Python, optimized in Rust
Testing | |
Package | |
Meta | |
Social |
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
- Usage Example
- Installation
- Dependencies
- License
- Documentation
- Development
- Contributing to bloomlib
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
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!
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
Built Distribution
File details
Details for the file bloomlib-0.0.3.tar.gz
.
File metadata
- Download URL: bloomlib-0.0.3.tar.gz
- Upload date:
- Size: 15.9 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: maturin/1.7.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e6239dc2de24a0c249918bf9ecdd1022c71db3507ac449bb590c3ba7a8dfc48c |
|
MD5 | 77395f07f56f02b34fff391d563a344a |
|
BLAKE2b-256 | ba1eb0887395b191b441ce30ff133feb42a1a3ede4153913f6014eb06f317b7c |
File details
Details for the file bloomlib-0.0.3-cp39-cp39-manylinux_2_34_x86_64.whl
.
File metadata
- Download URL: bloomlib-0.0.3-cp39-cp39-manylinux_2_34_x86_64.whl
- Upload date:
- Size: 260.1 kB
- Tags: CPython 3.9, manylinux: glibc 2.34+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: maturin/1.7.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a6443429eb2ca695b71734d61a8fe81362477d1d03b139b115a2c3cd8e50bb86 |
|
MD5 | 6b4fc6f9e8f9516e8528901ab65b1856 |
|
BLAKE2b-256 | 33972010cda687415abcd37c91b8c095fa4a09c1b39643975b5fca0d064fbd57 |