bloom: Bloom filter

Description Usage Arguments Details Examples

View source: R/bloom.R

Description

Create a new scaling, counting bloom filter, or load a bloom filter from a pre-existing file.

Usage

1
2
bloom(capacity = 1000, error_rate = 0.05, filename = tempfile(fileext =
  ".bin"), exists = file.exists(filename))

Arguments

capacity

the approximate expected capacity

error_rate

the desired error rate

filename

the location to store the filter

exists

if the filter exists, load the new filter from a pre-existing file, otherwise create a new filer.

Details

The filter has the following methods available

add

Add a new item to the bloom filter, each item should be assigned a monotonically increasing integer id as the second argument.

contains

Check if a given item is contained within the bloom filter.

remove

Remove a given item from the filter, the id should match the id given when the item was added.

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
library(bloom)
bloom <- bloom(capacity = 1000, error_rate = .05, filename = "/tmp/bloom.bin")
bloom$add("foo", 2)
bloom$contains("bar")
bloom$contains("foo")
bloom$remove("foo", 2)
bloom$contains("foo")
bloom$add("foo", 2)
rm(bloom)
bloom <- bloom(capacity = 1000, error_rate = .05, filename = "/tmp/bloom.bin", exists = TRUE)
bloom$contains("foo")

jimhester/bloom documentation built on May 19, 2019, 10:31 a.m.