Package io.quarkus.redis.datasource.topk
Interface TopKCommands<K,V>
- Type Parameters:
K
- the type of the keyV
- the type of the value stored in the sketch
- All Superinterfaces:
RedisCommands
- All Known Implementing Classes:
BlockingTopKCommandsImpl
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 TypeMethodDescriptionExecute the command TOPK.ADD.Execute the command TOPK.ADD.topkIncrBy
(K key, Map<V, Integer> couples) Execute the command TOPK.INCRBY.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.boolean
Execute the command TOPK.QUERY.Execute the command TOPK.QUERY.void
topkReserve
(K key, int topk) Execute the command TOPK.RESERVE.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.RedisCommands
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:
- an optional containing the item that get expelled if any, empty 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 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:
- an optional containing the item that get expelled if any, empty 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 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:
- 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:
- 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:
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 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.
-
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)
-