Package org.redisson.api
Interface RBloomFilterRx<T>
- Type Parameters:
T- - type of object
- All Superinterfaces:
RExpirableRx,RObjectRx
Distributed implementation of Bloom filter based on Highway 128-bit hash.
- Author:
- Nikita Koksharov
-
Method Summary
Modifier and TypeMethodDescriptionio.reactivex.rxjava3.core.Single<Long> add(Collection<T> elements) Adds elementsio.reactivex.rxjava3.core.Single<Boolean> Adds elementio.reactivex.rxjava3.core.Single<Long> contains(Collection<T> elements) Checks for elements presenceio.reactivex.rxjava3.core.Single<Boolean> Checks for element presenceio.reactivex.rxjava3.core.Single<Long> count()Calculates probabilistic number of elements already added to Bloom filter.io.reactivex.rxjava3.core.Single<Long> Returns expected amount of insertions per element.io.reactivex.rxjava3.core.Single<Double> Returns false probability of element presence.io.reactivex.rxjava3.core.Single<Integer> Returns hash iterations amount used per element.io.reactivex.rxjava3.core.Single<Long> getSize()Returns number of bits in Redis memory required by this instanceio.reactivex.rxjava3.core.Single<Boolean> tryInit(long expectedInsertions, double falseProbability) Initializes Bloom filter params (size and hashIterations) calculated fromexpectedInsertionsandfalseProbabilityStores config to Redis server.Methods inherited from interface org.redisson.api.RExpirableRx
clearExpire, expire, expire, expire, expireAt, expireAt, expireIfGreater, expireIfGreater, expireIfLess, expireIfLess, expireIfNotSet, expireIfNotSet, expireIfSet, expireIfSet, getExpireTime, remainTimeToLiveMethods inherited from interface org.redisson.api.RObjectRx
addListener, copy, delete, dump, getCodec, getIdleTime, getName, isExists, migrate, move, removeListener, rename, renamenx, restore, restore, restoreAndReplace, restoreAndReplace, sizeInMemory, touch, unlink
-
Method Details
-
add
Adds element- Parameters:
object- - element to add- Returns:
trueif element has been added successfullyfalseif element is already present
-
add
Adds elements- Parameters:
elements- elements to add- Returns:
- number of added elements
-
contains
Checks for element presence- Parameters:
object- element- Returns:
trueif element is presentfalseif element is not present
-
contains
Checks for elements presence- Parameters:
elements- elements to check presence- Returns:
- number of elements present
-
tryInit
Initializes Bloom filter params (size and hashIterations) calculated fromexpectedInsertionsandfalseProbabilityStores config to Redis server.- Parameters:
expectedInsertions- - expected amount of insertions per elementfalseProbability- - expected false probability- Returns:
trueif Bloom filter initializedfalseif Bloom filter already has been initialized
-
getExpectedInsertions
io.reactivex.rxjava3.core.Single<Long> getExpectedInsertions()Returns expected amount of insertions per element. Calculated during bloom filter initialization.- Returns:
- expected amount of insertions per element
-
getFalseProbability
io.reactivex.rxjava3.core.Single<Double> getFalseProbability()Returns false probability of element presence. Calculated during bloom filter initialization.- Returns:
- false probability of element presence
-
getSize
io.reactivex.rxjava3.core.Single<Long> getSize()Returns number of bits in Redis memory required by this instance- Returns:
- number of bits
-
getHashIterations
io.reactivex.rxjava3.core.Single<Integer> getHashIterations()Returns hash iterations amount used per element. Calculated during bloom filter initialization.- Returns:
- hash iterations amount
-
count
io.reactivex.rxjava3.core.Single<Long> count()Calculates probabilistic number of elements already added to Bloom filter.- Returns:
- probabilistic number of elements
-