There are 87 bloom filter crates. Strategies for choosing one?
There are about 87 bloom filter / AMQ-filter crates.
I would like to use a bloom filter in my Rust project. I don't require any fancy features like merging, serializing, growing, removing, counting, etc.
Advice for choosing a crate quickly without looking into each of them in detail?
| Last Release | Downloads | Version | Name | Description |
|---|---|---|---|---|
| 2022-09-20 | 3246395 | 0.13.0 | ethbloom | Ethereum bloom filter |
| 2020-08-25 | 1682542 | 0.5.0 | cuckoofilter | Cuckoo Filter: Practically Better Than Bloom |
| 2021-09-09 | 849691 | 1.0.9 | bloomfilter | Bloom filter implementation |
| 2016-09-13 | 361569 | 0.3.2 | bloom | Fast Bloom Filter and Counting Bloom Filter implementation |
| 2023-02-09 | 222762 | 1.15.1 | solana-bloom | Solana bloom filter |
| 2021-06-26 | 158563 | 2.0.1 | growable-bloom-filter | Scalable Bloom Filters with serde support |
| 2021-06-22 | 138419 | 0.1.2 | bloom-filters | Rust port of tylertreat/BoomFilters |
| 2017-08-07 | 74810 | 0.2.0 | bloomchain | Standalone blockchain bloom filter |
| 2017-08-02 | 53726 | 0.2.1 | etcommon-bloom | Log bloom implementation for Ethereum. |
| 2022-05-10 | 43767 | 1.4.0 | rust\_cascade | A simple bloom filter cascade implementation in Rust. |
| 2022-12-14 | 43359 | 0.8.1 | xorf | Library implementing xor filters - faster and smaller than bloom and cuckoo filters. |
| 2022-06-13 | 24285 | 0.7.0 | pdatastructs | Simple probabilistic data structures |
| 2020-05-11 | 23033 | 0.7.0 | probabilistic-collections | Various implementations of collections that use approximations to improve on running time or memory, but introduce a certain amount of error. |
| 2022-12-13 | 19594 | 0.5.0 | finch | An implementation of min-wise independent permutation locality sensitive hashing ('MinHashing') for genomic data and command-line utility for manipulation. |
| 2021-09-08 | 17445 | 0.5.1 | xorfilter-rs | Xor Filters: Faster and Smaller Than Bloom and Cuckoo Filters |
| 2019-08-23 | 14620 | 0.1.3 | cbloom | Concurrent implementation of Bloom filters. |
| 2023-02-09 | 13923 | 0.4.0 | fastbloom-rs | Some fast bloom filter implemented by Rust for Python and Rust! |
| 2021-06-08 | 10031 | 0.11.1 | vapbloom | Tetsy Common Vapory Bloom Filter |
| 2022-02-19 | 6624 | 0.1.0 | lockfree-cuckoohash | A rust implementation of lockfree cuckoo hashmap |
| 2017-12-11 | 5303 | 0.2.1 | ethereum-bloom | Log bloom implementation for Ethereum. |
| 2021-12-14 | 4250 | 0.2.2 | Xorfilter | No alloc membership approximation |
| 2018-01-16 | 3974 | 0.1.1 | scalable\_bloom\_filter | Scalable Bloom Filter |
| 2021-06-06 | 3966 | 0.29.1 | librualg | Collection of basic algorithms for everyday development |
| 2019-05-24 | 3383 | 0.4.1 | tinysearch-cuckoofilter | Cuckoo Filter: Practically Better Than Bloom |
| 2022-09-13 | 3212 | 1.2.0 | bloomy | A simple Bloom filter using only two hash functions |
| 2023-01-22 | 3002 | 0.2.2 | scalable\_cuckoo\_filter | A variant of Cuckoo Filter whose size automatically scales as necessary |
| 2020-10-12 | 2997 | 0.8.0 | cuckoo | Cuckoo search algorithm |
| 2016-04-15 | 2147 | 0.2.0 | multibloom | A collection of libraries including a number of different types of bloom filters. Currently a work in progress |
| 2019-05-13 | 2028 | 0.5.1 | sbloom | Sophon bloom filter |
| 2023-01-01 | 1983 | 3.1.0 | fides | Fides is a library for cryptographic primitives. |
| 2018-11-06 | 1741 | 0.1.0 | bloom-filter-rs | A Bloom Filter implementation in Rust |
| 2019-07-30 | 1485 | 0.11.1 | xx-bloomfilter | Bloom filter implementation using xx hash |
| 2022-10-10 | 1292 | 0.1.1 | cascara | Implementation of TinyLFU cache |
| 2021-12-10 | 1228 | 0.1.6 | sbf | Spatial Bloom Filter, a probabilistic data structure that maps elements of a space to indexed disjoint subsets of that space. |
| 2020-08-26 | 1200 | 0.1.5 | plum | Probabilistic data structures for rust |
| 2021-03-10 | 1178 | 0.4.0 | mkit | Tools and macros for distributed and peer-to-peer applications |
| 2022-09-13 | 1100 | 0.7.2 | sets\_multisets | Simple API for working with sets and multisets of elements of type usize |
| 2021-09-08 | 1023 | 1.2.2 | runiq-lib | An efficient way to filter duplicate lines from input, à la uniq. |
| 2020-05-28 | 1006 | 0.1.2 | flit | Bloom filter backed by xxHash |
| 2020-11-10 | 909 | (none) | rust-bloomfilter | A simple bloom filter implementation in Rust programming language. |
| 2019-02-24 | 897 | 0.1.2 | cuckoocache | High performance concurrent cache |
| 2016-10-26 | 865 | 0.1.0 | selectors-bloom | Bloom filter used in the selectors crate |
| 2020-12-03 | 851 | 0.3.1 | probably | A library with various approximate computing algorithms |
| 2016-12-12 | 849 | 0.1.0 | bloom\_filter | A bloom filter implementation |
| 2019-08-13 | 815 | 0.3.0 | stable-bloom-filter | A Rust-implementation of a stable Bloom filter for filtering duplicates out of data streams. |
| 2016-11-30 | 773 | 0.1.0 | seabloom | Yet Another Bloom Filter, this one using seahash |
| 2021-08-05 | 719 | 0.1.6 | bloom\_filter\_plus | rust\_bloom\_filter |
| 2021-01-02 | 671 | 0.2.1 | bloom2 | Fast, compressed 2-level bloom filter and bitmap |
| 2023-01-19 | 655 | (none) | bitcoinleveldb-filter | a filter block is stored near the end of a table file. It contains filters (eg blooms) for all data blocks in the table combined into a single filter block. |
| 2017-06-12 | 604 | 0.1.0 | bloom\_rs | Tiny rust bloom filter implementation |
| 2021-10-18 | 600 | 0.3.2 | lupine | A bloom filter using FX Hash with Kirsch and Mitzenmacher optimization. |
| 2021-05-22 | 585 | 0.1.6 | bloom\_filter\_plush | rust\_bloom\_filter |
| 2019-07-10 | 573 | 0.2.0 | golomb-set | A Golomb Coded Set implementation |
| 2022-10-23 | 570 | 0.0.7 | kmerutils | Kmer counting, hashing |
| 2017-09-27 | 562 | 0.0.1 | bloom-filter-wbj | Space efficient probabilistic hash set |
| 2023-01-19 | 495 | (none) | bitcoin-cuckoo-cache | high performance cache primitives |
| 2022-10-15 | 482 | 1.14.3 | safecoin-bloom | Safecoin bloom filter |
| 2021-02-28 | 455 | 0.1.0 | blooms-db | Vapory blooms database |
| 2021-02-28 | 452 | 0.1.0 | vapcore-bloom-journal | Vapory Journaling bloom filter |
| 2018-05-05 | 425 | 0.1.0 | iblt | Invertible bloom lookup table implementation |
| 2023-01-19 | 420 | (none) | bitcoinleveldb-bloom | bloom filters for the bitcoin leveldb |
| 2022-03-07 | 388 | 0.2.0 | roaring-bloom-filter | bloom filter implementation in rust with roaring-bitmap |
| 2018-12-31 | 382 | 0.1.0 | rsbloom | A simple bloom filter implementation in Rust |
| 2023-02-06 | 377 | 0.4.1 | ofilter | OFilter is a fast thread-safe Bloom filter. |
| 2019-11-08 | 361 | 1.0.0 | mqf | MQF, Mixed Quotient Filter, is a variant of CQF (Counting Quotient Filter) |
| 2021-06-09 | 288 | 0.1.1 | dakv\_cuckoo | Cuckoo filter for dakv |
| 2021-01-29 | 287 | 0.1.1 | create-bloom-filter | Small Rust application to create bloom filter of optimal size given a false positivity rate |
| 2020-08-21 | 270 | 0.1.0 | probabilistic\_data\_structures | Probabilistic data structures in Rust Lang. |
| 2022-12-11 | 247 | 0.2.3 | quotient-filter | A quotient filter implementation. |
| 2021-08-25 | 238 | 0.1.1 | iron\_rose | Rust implementation of Invertable Bloom Filters & Strata Estimators as found in EppGooUye-SIGCOMM-11.pdf |
| 2023-01-19 | 237 | (none) | bitcoin-bloom | bloom filter is a probabilistic filter which SPV clients provide so we can filter the transactions we send them -- this allows for significantly more efficient transaction and block downloads |
| 2023-02-06 | 220 | 0.3.2 | disklru | DiskLRU is an experimental LRU store. |
| 2020-03-06 | 209 | 0.1.0 | cuckoo\_filter | a cuckoo filter implementation in rust |
| 2020-12-07 | 191 | 0.1.0 | bloom\_filter\_simple | A simple and generic bloom filter implementation. |
| 2020-12-02 | 179 | 0.1.0 | bloomf | Bloom Filter |
| 2022-02-08 | 132 | 0.0.1 | bloomer | Bloom filter |
| 2022-04-12 | 131 | 0.1.0 | compressed\_map | 'Static functions': compressed maps with the keys removed |
| 2022-02-14 | 129 | 0.1.0 | generic-bloom | A generic implementation of Bloom filters using traits |
| 2022-01-18 | 129 | 0.2.0 | sbf-blake3 | Spatial Bloom Filter, a probabilistic data structure that maps elements of a space to indexed disjoint subsets of that space. |
| 2022-12-25 | 128 | 0.2.0 | bfilters | Simple bloom filter implementation in Rust. |
| 2022-03-21 | 125 | 0.1.0 | bloomfilter-rs | A conveniently simple implemenation of a bloomfilter. |
| 2023-01-15 | 95 | 0.1.2 | qfilter | Approximate Membership Query Filter (AMQ-Filter) based on the Rank Select Quotient Filter (RSQF) |
| 2022-11-16 | 86 | 0.4.0 | mmap-bitvec | A library for working with bit-vectors backed by memory-mapped files |
| 2022-12-27 | 75 | 1.0.0 | rs-bucket-filter | Skips slow scans using cache, bloom filter, ... |
| 2023-01-18 | 42 | 0.1.0 | kukoo | A rust implementation of lockfree cuckoo hashmap |
| 2022-11-13 | 42 | 0.1.0 | yz-bll32 | simple backend for bloom-like filter for partitions and tags of content-addressed data |
| 2022-11-30 | 36 | (none) | memory-cache-rust | memory-cache is a fast, concurrent cache library built with a focus on performance and correctness. The motivation to build Ristretto comes from the need for a contention-free cache in |