cbloom

Version, currently 1.3.04 versions

github.com/creadone/cbloom

Sharded Bloom Filter

2 stars
0 dependents
License: MIT

Installation

# Add this to your shard.yml
dependencies:
  cbloom:
    github: creadone/cbloom
    version: ~> 1.3.0

Then run:

shards install

shard.yml

Crystal
1.5.0
License
MIT
Author
creadone
Target
  • cbloom from src/cbloom.cr

Dependencies

Runtime Dependencies

  • nanoid*git: git@github.com:mamantoha/nanoid.cr.git
  • bloom_filter*git: git@github.com:willhbr/bloom_filter.git, branch: bytes

README

Cbloom

Sharded Bloom Filter with hash generation for use on my internal project. Cbloom is cluster of 32bit Bloom filters that can be flushed on drive. It work through socket (see /lua/cbloom.lua). Cbloom is needed to quickly generate a large number of unique hashes and nothing else.

Installation

shards install & shards build --release

Usage

Usage: cbloom [arguments]
    -d PATH,  --directory=PATH       Path to directory where bitmaps are stored
    -s INT,   --shards=INT           Number of bloom filter shards
    -e FLOAT, --probability=FLOAT    Probability of false positives
    -i INT,   --item=INT             Max number of items
    -h,       --help                 Show this help

Usage

Run

./bin/cbloom -d ./bitmaps -s 5 -i 1000000 -e 0.01

Call

local cbloom = require('cbloom')

cbloom.setup('/var/run/cbloom.sock')
print(cbloom.get())

Contributors