Java Client for ReBloom bloom filter module
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
lib
src
.gitignore
LICENSE
README.md
jrebloom.iml
pom.xml

README.md

Maven Central

JReBloom

A Java Client Library for ReBloom

Overview

This project contains a Java library abstracting the API of the ReBloom Redis module, that implements a high performance bloom filter with an easy-to-use API

See http://rebloom.io for installation instructions of the module.

Official Releases

  <dependencies>
    <dependency>
      <groupId>com.redislabs</groupId>
      <artifactId>jrebloom</artifactId>
      <version>1.0.1</version>
    </dependency>
  </dependencies>

Snapshots

  <repositories>
    <repository>
      <id>snapshots-repo</id>
      <url>https://oss.sonatype.org/content/repositories/snapshots</url>
    </repository>
  </repositories>

and

  <dependencies>
    <dependency>
      <groupId>com.redislabs</groupId>
      <artifactId>jrebloom</artifactId>
      <version>1.0.2-SNAPSHOT</version>
    </dependency>
  </dependencies>

Usage example

Initializing the client:

import io.rebloom.client.Client

Client client = new Client("localhost", 6378);

Adding items to a bloom filter (created using default settings):

client.add("simpleBloom", "Mark");
// Does "Mark" now exist?
client.exists("simpleBloom", "Mark"); // true
client.exists("simpleBloom", "Farnsworth"); // False

Use multi-methods to add/check multiple items at once:

client.addMulti("simpleBloom", "foo", "bar", "baz", "bat", "bag");

// Check if they exist:
boolean[] rv = client.existsMulti("simpleBloom", "foo", "bar", "baz", "bat", "mark", "nonexist");

Reserve a customized bloom filter:

client.createFilter("specialBloom", 10000, 0.0001);
client.add("specialBloom", "foo");

Use cluster client to call redis cluster Initializing the cluster client:

Set<HostAndPort> jedisClusterNodes = new HashSet<>();
jedisClusterNodes.add(new HostAndPort("localhost", 7000));
ClusterClient cclient = new ClusterClient(jedisClusterNodes);

Adding items to a bloom filter (created using default settings):

cclient.add("simpleBloom", "Mark");
// Does "Mark" now exist?
cclient.exists("simpleBloom", "Mark"); // true
cclient.exists("simpleBloom", "Farnsworth"); // False

all method of ClusterClient is same to Client.