Popularity
4.5
Growing
Activity
1.3
Declining
117
1
13

Programming language: Go
License: BSD 2-clause "Simplified" License
Tags: Data Structures    
Latest version: v1.1.2

ring alternatives and similar packages

Based on the "Data Structures" category.
Alternatively, view ring alternatives based on common mentions on social networks and blogs.

Do you think we are missing an alternative of ring or a related project?

Add another 'Data Structures' Package

README

ring - high performance bloom filter

Build
Status codecov Go Report
Card PkgGoDev GitHub
license Mentioned in Awesome
Go

Package ring provides a high performance and thread safe Go implementation of a bloom filter.

Usage

Please see the godoc for usage.

Accuracy

Running make will perform unit tests, comparing the target false positive rate with the actual rate. Here is a test against 1 million elements with a targeted false positive rate of 0.1%. Tests fail if the number of false positives exceeds the target.

=== RUN   TestBadParameters
--- PASS: TestBadParameters (0.00s)
=== RUN   TestReset
--- PASS: TestReset (0.26s)
=== RUN   TestData
--- PASS: TestData (14.07s)
=== RUN   TestMerge
--- PASS: TestMerge (13.78s)
=== RUN   TestMarshal
--- PASS: TestMarshal (14.48s)
PASS
>> Number of elements:  1000000
>> Target false positive rate:  0.001000
>> Number of false positives:  99
>> Actual false positive rate:  0.000099
>> Number of false negatives:  0
>> Actual false negative rate:  0.000000
>> Benchmark Add():  10000000          158 ns/op
>> Benchmark Test():  10000000         173 ns/op
ok      command-line-arguments  47.914s

License

Copyright (c) 2019 Tanner Ryan. All rights reserved. Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.


*Note that all licence references and agreements mentioned in the ring README section above are relevant to that project's source code only.