Package io.quarkus.redis.datasource.topk
Interface ReactiveTopKCommands<K,V>
- Type Parameters:
K
- the type of the keyV
- the type of the value stored in the sketch
- All Superinterfaces:
ReactiveRedisCommands
- All Known Implementing Classes:
ReactiveTopKCommandsImpl
Allows executing commands from the
top-k
group.
These commands require the Redis Bloom module (this modules also
include Top-K list support) to be installed in the Redis server.
See the top-k command list for further information about these commands.
-
Method Summary
Modifier and TypeMethodDescriptionio.smallrye.mutiny.Uni<V>
Execute the command TOPK.ADD.Execute the command TOPK.ADD.topkIncrBy
(K key, Map<V, Integer> couples) Execute the command TOPK.INCRBY.io.smallrye.mutiny.Uni<V>
topkIncrBy
(K key, V item, int increment) Execute the command TOPK.INCRBY.Execute the command TOPK.LIST.topkListWithCount
(K key) Execute the command TOPK.LIST.io.smallrye.mutiny.Uni<Boolean>
Execute the command TOPK.QUERY.Execute the command TOPK.QUERY.io.smallrye.mutiny.Uni<Void>
topkReserve
(K key, int topk) Execute the command TOPK.RESERVE.io.smallrye.mutiny.Uni<Void>
topkReserve
(K key, int topk, int width, int depth, double decay) Execute the command TOPK.RESERVE.Methods inherited from interface io.quarkus.redis.datasource.ReactiveRedisCommands
getDataSource
-
Method Details
-
topkAdd
Execute the command TOPK.ADD. Summary: Adds an item to the data structure. Multiple items can be added at once. If an item enters the Top-K list, the item which is expelled is returned. This allows dynamic heavy-hitter detection of items being entered or expelled from Top-K list. Group: top-k- Parameters:
key
- the name of list where item is added, must not benull
item
- the item to add, must not benull
- Returns:
- a uni producing the item that get expelled if any, emit
null
otherwise
-
topkAdd
Execute the command TOPK.ADD. Summary: Adds an item to the data structure. Multiple items can be added at once. If an item enters the Top-K list, the item which is expelled is returned. This allows dynamic heavy-hitter detection of items being entered or expelled from Top-K list. Group: top-k- Parameters:
key
- the name of list where item is added, must not benull
items
- the items to add, must not benull
, must not be empty, must not containnull
- Returns:
- a uni producing a list containing for each corresponding added item the expelled item if any,
null
otherwise.
-
topkIncrBy
Execute the command TOPK.INCRBY. Summary: Increase the score of an item in the data structure by increment. Multiple items' score can be increased at once. If an item enters the Top-K list, the item which is expelled is returned. Group: top-k- Parameters:
key
- the name of list where item is added, must not benull
item
- the item to add, must not benull
increment
- increment to current item score. Increment must be greater or equal to 1. Increment is limited to 100,000 to avoid server freeze.- Returns:
- a uni producing the item that get expelled if any, emit
null
otherwise
-
topkIncrBy
Execute the command TOPK.INCRBY. Summary: Increase the score of an item in the data structure by increment. Multiple items' score can be increased at once. If an item enters the Top-K list, the item which is expelled is returned. Group: top-k- Parameters:
key
- the name of list where item is added, must not benull
couples
- The map containing the item / increment, must not benull
, must not be empty- Returns:
- a uni producing a map containing for each added item the expelled item if any,
null
otherwise
-
topkList
Execute the command TOPK.LIST. Summary: Return full list of items in Top K list. Group: top-k- Parameters:
key
- the name of list, must not benull
- Returns:
- a uni producing the list of items
-
topkListWithCount
Execute the command TOPK.LIST. Summary: Return full list of items in Top K list. Group: top-k- Parameters:
key
- the name of list, must not benull
- Returns:
- a uni producing the Map of items with the associated count
-
topkQuery
Execute the command TOPK.QUERY. Summary: Checks whether an item is one of Top-K items. Multiple items can be checked at once. Group: top-k- Parameters:
key
- the name of list, must not benull
item
- the item to check, must not benull
- Returns:
- a uni producing
true
if the item is in the list,false
otherwise
-
topkQuery
Execute the command TOPK.QUERY. Summary: Checks whether an item is one of Top-K items. Multiple items can be checked at once. Group: top-k- Parameters:
key
- the name of list, must not benull
items
- the items to check, must not benull
, must not containnull
, must not be empty- Returns:
- a uni producing a list containing
true
if the corresponding item is in the list,false
otherwise
-
topkReserve
Execute the command TOPK.RESERVE. Summary: Initializes a TopK with specified parameters. Group: top-k- Parameters:
key
- the name of list, must not benull
topk
- the number of top occurring items to keep.- Returns:
- a uni producing
null
once the operation completes
-
topkReserve
Execute the command TOPK.RESERVE. Summary: Initializes a TopK with specified parameters. Group: top-k- Parameters:
key
- the name of list, must not benull
topk
- the number of top occurring items to keep.width
- the number of counters kept in each array. (Default 8)depth
- the number of arrays. (Default 7)decay
- the probability of reducing a counter in an occupied bucket. It is raised to power of it's counter (decay ^ bucket[i].counter). Therefore, as the counter gets higher, the chance of a reduction is being reduced. (Default 0.9)- Returns:
- a uni producing
null
once the operation completes
-