Popularity
0.4
Declining
Activity
0.0
Stable
1
2
0

Description

Bloom filter is a space efficient, probabilistic data structure, designed to test the membership of elements to a set.

Programming language: Go
Tags: Data Structures     Algorithms     Murmur3    

blooming-bella alternatives and similar packages

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

Do you think we are missing an alternative of blooming-bella or a related project?

Add another 'Data Structures' Package

README

blooming-belle - A simple implementation of Bloom Filters

What?

Bloom filter is a space efficient, probabilistic data structure, designed to test the membership of elements to a set.

Trade-offs?

Being a space efficient data structure is it may return false positives, but always returns definite negatives.

Applications?

Testing for non-membership saves resources such as calls to a web server, checking a proxy cache. Google Chrome uses bloom filters as a check for malicious URLs.

blooming-bella

A bloom filter for integers. Uses mummur3,Super Fast Hash and marvin32 hashing algorithms

Example

 bella, err := blooming_bella.NewBella(1000, 0.01)

    if err != nil {
        log.Fatal(err)
    }
    bella.Add(10)
    bella.Add(121)
    bella.Add(13)
    bella.Add(111)

    fmt.Println(bella.Test(10)) // => true
    fmt.Println(bella.Test(104)) // => false
    fmt.Println(bella.Test(110)) // => false
    fmt.Println(bella.Test(13)) // => true

New

Added Super Fast Hashing algorithm

TODO

  • [ ] Calculate "ideal" number of hash functions to use.
  • [ ] Dynamically "generate" the hash functions. What does it mean to be alive?