Skip to content

Bloom filter implemented in Go (golang) with both Redis and Bitset backend support.

Notifications You must be signed in to change notification settings

kristinn/go-bloom

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Bloom filter

GoDoc

Golang bloom filter library with support for both bitset and redis backends.

Tests and benchmarks

It's easy to run the tests and benchmarks.

make test

This will try to connect to Redis listening on the default port (6379) running on localhost.

You can supply the environment variable REDIS_HOST in case you are not running redis on localhost.

REDIS_HOST=192.168.33.10 make test

Benchmarking

Benchmarking results on my Macbook Pro Mid 2014 (2.5 ghz Intel Core i7, 16 GB RAM, with "flash" drive (SSD?)), running redis locally with no special configuration.

BenchmarkRedisQueueAppend-8	 2000000	       957 ns/op
BenchmarkRedisSave-8       	  200000	      9550 ns/op
BenchmarkRedisExists-8     	   50000	     29933 ns/op
BenchmarkBitsetAppend-8    	 2000000	       932 ns/op
BenchmarkBitsetSave-8      	 2000000	       906 ns/op
BenchmarkBitsetExists-8    	 2000000	       647 ns/op

About

Bloom filter implemented in Go (golang) with both Redis and Bitset backend support.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published