Interface TimeSeriesCommands<K>
-
- Type Parameters:
K
- the type of the key
- All Superinterfaces:
RedisCommands
- All Known Implementing Classes:
BlockingTimeSeriesCommandsImpl
@Experimental("The time series command group is experimental") public interface TimeSeriesCommands<K> extends RedisCommands
Allows executing commands from thetime series
group (requires the Redis Time Series module from Redis stack). See the time series command list for further information about these commands.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
tsAdd(K key, double value)
Execute the command TS.ADD.void
tsAdd(K key, double value, AddArgs args)
Execute the command TS.ADD.void
tsAdd(K key, long timestamp, double value)
Execute the command TS.ADD.void
tsAdd(K key, long timestamp, double value, AddArgs args)
Execute the command TS.ADD.void
tsAlter(K key, AlterArgs args)
Execute the command TS.ALTER.void
tsCreate(K key)
Execute the command TS.CREATE.void
tsCreate(K key, CreateArgs args)
Execute the command TS.CREATE.void
tsCreateRule(K key, K destKey, Aggregation aggregation, Duration bucketDuration)
Execute the command TS.CREATERULE.void
tsCreateRule(K key, K destKey, Aggregation aggregation, Duration bucketDuration, long alignTimestamp)
Execute the command TS.CREATERULE.void
tsDecrBy(K key, double value)
Execute the command TS.DECRBY.void
tsDecrBy(K key, double value, IncrementArgs args)
Execute the command TS.DECRBY.void
tsDel(K key, long fromTimestamp, long toTimestamp)
Execute the command TS.DEL.void
tsDeleteRule(K key, K destKey)
Execute the command TS.DELETERULE.Sample
tsGet(K key)
Execute the command TS.GET.Sample
tsGet(K key, boolean latest)
Execute the command TS.GET.void
tsIncrBy(K key, double value)
Execute the command TS.INCRBY.void
tsIncrBy(K key, double value, IncrementArgs args)
Execute the command TS.INCRBY.void
tsMAdd(SeriesSample<K>... samples)
Execute the command TS.MADD.Map<String,SampleGroup>
tsMGet(Filter... filters)
Execute the command TS.MGET.Map<String,SampleGroup>
tsMGet(MGetArgs args, Filter... filters)
Execute the command TS.MGET.Map<String,SampleGroup>
tsMRange(TimeSeriesRange range, Filter... filters)
Execute the command TS.MRANGE.Map<String,SampleGroup>
tsMRange(TimeSeriesRange range, MRangeArgs args, Filter... filters)
Execute the command TS.MRANGE.Map<String,SampleGroup>
tsMRevRange(TimeSeriesRange range, Filter... filters)
Execute the command TS.MREVRANGE.Map<String,SampleGroup>
tsMRevRange(TimeSeriesRange range, MRangeArgs args, Filter... filters)
Execute the command TS.MREVRANGE.List<K>
tsQueryIndex(Filter... filters)
Execute the command TS.QUERYINDEX.List<Sample>
tsRange(K key, TimeSeriesRange range)
Execute the command TS.RANGE.List<Sample>
tsRange(K key, TimeSeriesRange range, RangeArgs args)
Execute the command TS.RANGE.List<Sample>
tsRevRange(K key, TimeSeriesRange range)
Execute the command TS.REVRANGE.List<Sample>
tsRevRange(K key, TimeSeriesRange range, RangeArgs args)
Execute the command TS.REVRANGE.-
Methods inherited from interface io.quarkus.redis.datasource.RedisCommands
getDataSource
-
-
-
-
Method Detail
-
tsCreate
void tsCreate(K key, CreateArgs args)
Execute the command TS.CREATE. Summary: Create a new time series Group: time series- Parameters:
key
- the key name for the time series must not benull
args
- the creation arguments.
-
tsCreate
void tsCreate(K key)
Execute the command TS.CREATE. Summary: Create a new time series Group: time series- Parameters:
key
- the key name for the time series must not benull
-
tsAdd
void tsAdd(K key, long timestamp, double value, AddArgs args)
Execute the command TS.ADD. Summary: Append a sample to a time series Group: time series- Parameters:
key
- the key name for the time series must not benull
timestamp
- the (long) UNIX sample timestamp in milliseconds or-1
to set the timestamp according to the server clock.value
- the numeric data value of the sample.args
- the creation arguments.
-
tsAdd
void tsAdd(K key, long timestamp, double value)
Execute the command TS.ADD. Summary: Append a sample to a time series Group: time series- Parameters:
key
- the key name for the time series, must not benull
timestamp
- the (long) UNIX sample timestamp in millisecondsvalue
- the numeric data value of the sample
-
tsAdd
void tsAdd(K key, double value)
Execute the command TS.ADD. Summary: Append a sample to a time series Group: time seriesUnlike
tsAdd(Object, long, double)
, set the timestamp according to the server clock.- Parameters:
key
- the key name for the time series. must not benull
value
- the numeric data value of the sample, must not benull
-
tsAdd
void tsAdd(K key, double value, AddArgs args)
Execute the command TS.ADD. Summary: Append a sample to a time series Group: time seriesUnlike
tsAdd(Object, long, double, AddArgs)
, set the timestamp according to the server clock.- Parameters:
key
- the key name for the time series must not benull
value
- the numeric data value of the sample.args
- the creation arguments.
-
tsAlter
void tsAlter(K key, AlterArgs args)
Execute the command TS.ALTER. Summary: Update the retention, chunk size, duplicate policy, and labels of an existing time series Group: time series- Parameters:
key
- the key name for the time series, must not benull
args
- the alter parameters, must not benull
-
tsCreateRule
void tsCreateRule(K key, K destKey, Aggregation aggregation, Duration bucketDuration)
Execute the command TS.CREATERULE. Summary: Create a compaction rule Group: time series- Parameters:
key
- the key name for the time series, must not benull
destKey
- the key name for destination (compacted) time series. It must be created before TS.CREATERULE is called. Must not benull
.aggregation
- the aggregation function, must not benull
bucketDuration
- the duration of each bucket, must not benull
-
tsCreateRule
void tsCreateRule(K key, K destKey, Aggregation aggregation, Duration bucketDuration, long alignTimestamp)
Execute the command TS.CREATERULE. Summary: Create a compaction rule Group: time series- Parameters:
key
- the key name for the time series, must not benull
destKey
- the key name for destination (compacted) time series. It must be created before TS.CREATERULE is called. Must not benull
.aggregation
- the aggregation function, must not benull
bucketDuration
- the duration of each bucket, must not benull
alignTimestamp
- when set, ensures that there is a bucket that starts exactly at alignTimestamp and aligns all other buckets accordingly. It is expressed in milliseconds. The default value is 0 aligned with the epoch. For example, if bucketDuration is 24 hours (24 * 3600 * 1000), setting alignTimestamp to 6 hours after the epoch (6 * 3600 * 1000) ensures that each bucket’s timeframe is [06:00 .. 06:00).
-
tsDecrBy
void tsDecrBy(K key, double value)
Execute the command TS.DECRBY. Summary: Decrease the value of the sample with the maximum existing timestamp, or create a new sample with a value equal to the value of the sample with the maximum existing timestamp with a given decrement Group: time series- Parameters:
key
- the key name for the time series. must not benull
value
- the numeric data value of the sample, must not benull
-
tsDecrBy
void tsDecrBy(K key, double value, IncrementArgs args)
Execute the command TS.DECRBY. Summary: Decrease the value of the sample with the maximum existing timestamp, or create a new sample with a value equal to the value of the sample with the maximum existing timestamp with a given decrement Group: time series- Parameters:
key
- the key name for the time series. must not benull
value
- the numeric data value of the sample, must not benull
args
- the extra command parameters
-
tsDel
void tsDel(K key, long fromTimestamp, long toTimestamp)
Execute the command TS.DEL. Summary: Delete all samples between two timestamps for a given time series Group: time seriesThe given timestamp interval is closed (inclusive), meaning that samples whose timestamp equals the fromTimestamp or toTimestamp are also deleted.
- Parameters:
key
- the key name for the time series. must not benull
fromTimestamp
- the start timestamp for the range deletion.toTimestamp
- the end timestamp for the range deletion.
-
tsDeleteRule
void tsDeleteRule(K key, K destKey)
Execute the command TS.DELETERULE. Summary: Delete a compaction rule Group: time series- Parameters:
key
- the key name for the time series. must not benull
destKey
- the key name for destination (compacted) time series. Note that the command does not delete the compacted series. Must not benull
-
tsGet
Sample tsGet(K key)
Execute the command TS.GET. Summary: Get the last sample Group: time series- Parameters:
key
- the key name for the time series. must not benull
- Returns:
- A uni emitting a
Sample
, i.e. a couple containing the timestamp and the value.
-
tsGet
Sample tsGet(K key, boolean latest)
Execute the command TS.GET. Summary: Get the last sample Group: time series- Parameters:
key
- the key name for the time series. must not benull
latest
- used when a time series is a compaction. With LATEST set totrue
, TS.MRANGE also reports the compacted value of the latest possibly partial bucket, given that this bucket's start time falls within [fromTimestamp, toTimestamp]. Without LATEST, TS.MRANGE does not report the latest possibly partial bucket. When a time series is not a compaction, LATEST is ignored.- Returns:
- A uni emitting a
Sample
, i.e. a couple containing the timestamp and the value.
-
tsIncrBy
void tsIncrBy(K key, double value)
Execute the command TS.INCRBY. Summary: Increase the value of the sample with the maximum existing timestamp, or create a new sample with a value equal to the value of the sample with the maximum existing timestamp with a given increment. Group: time series- Parameters:
key
- the key name for the time series. must not benull
value
- the numeric data value of the sample, must not benull
-
tsIncrBy
void tsIncrBy(K key, double value, IncrementArgs args)
Execute the command TS.INCRBY. Summary: Increase the value of the sample with the maximum existing timestamp, or create a new sample with a value equal to the value of the sample with the maximum existing timestamp with a given increment. Group: time series- Parameters:
key
- the key name for the time series. must not benull
value
- the numeric data value of the sample, must not benull
args
- the extra command parameters
-
tsMAdd
void tsMAdd(SeriesSample<K>... samples)
Execute the command TS.MADD. Summary: Append new samples to one or more time series Group: time series- Parameters:
samples
- the set of samples to add to the time series.
-
tsMGet
Map<String,SampleGroup> tsMGet(MGetArgs args, Filter... filters)
Execute the command TS.MGET. Summary: Get the last samples matching a specific filter Group: time series- Parameters:
args
- the extra command parameter, must not benull
filters
- the filters. Instanced are created using the static methods fromFilter
. Must not benull
, or contain anull
value.- Returns:
- A uni emitting a Map of
String -> SampleGroup
, containing the matching sample grouped by key. The key is the string representation of the time series key.
-
tsMGet
Map<String,SampleGroup> tsMGet(Filter... filters)
Execute the command TS.MGET. Summary: Get the last samples matching a specific filter Group: time series- Parameters:
filters
- the filters. Instanced are created using the static methods fromFilter
. Must not benull
, or contain anull
value.- Returns:
- A uni emitting a Map of
String -> SampleGroup
, containing the matching sample grouped by key. The key is the string representation of the time series key.
-
tsMRange
Map<String,SampleGroup> tsMRange(TimeSeriesRange range, Filter... filters)
Execute the command TS.MRANGE. Summary: Query a range across multiple time series by filters in forward direction Group: time series- Parameters:
range
- the range, must not benull
filters
- the filters. Instanced are created using the static methods fromFilter
. Must not benull
, or contain anull
value.- Returns:
- A uni emitting a Map of
String -> SampleGroup
, containing the matching sample grouped by key. The key is the string representation of the time series key.
-
tsMRange
Map<String,SampleGroup> tsMRange(TimeSeriesRange range, MRangeArgs args, Filter... filters)
Execute the command TS.MRANGE. Summary: Query a range across multiple time series by filters in forward direction Group: time series- Parameters:
range
- the range, must not benull
args
- the extra command parametersfilters
- the filters. Instanced are created using the static methods fromFilter
. Must not benull
, or contain anull
value.- Returns:
- A uni emitting a Map of
String -> SampleGroup
, containing the matching sample grouped by key. The key is the string representation of the time series key.
-
tsMRevRange
Map<String,SampleGroup> tsMRevRange(TimeSeriesRange range, Filter... filters)
Execute the command TS.MREVRANGE. Summary: Query a range across multiple time series by filters in reverse direction Group: time series- Parameters:
range
- the range, must not benull
filters
- the filters. Instanced are created using the static methods fromFilter
. Must not benull
, or contain anull
value.- Returns:
- A uni emitting a Map of
String -> SampleGroup
, containing the matching sample grouped by key. The key is the string representation of the time series key.
-
tsMRevRange
Map<String,SampleGroup> tsMRevRange(TimeSeriesRange range, MRangeArgs args, Filter... filters)
Execute the command TS.MREVRANGE. Summary: Query a range across multiple time series by filters in reverse direction Group: time series- Parameters:
range
- the range, must not benull
args
- the extra command parametersfilters
- the filters. Instanced are created using the static methods fromFilter
. Must not benull
, or contain anull
value.- Returns:
- A uni emitting a Map of
String -> SampleGroup
, containing the matching sample grouped by key. The key is the string representation of the time series key.
-
tsQueryIndex
List<K> tsQueryIndex(Filter... filters)
Execute the command TS.QUERYINDEX. Summary: Get all time series keys matching a filter list Group: time series- Parameters:
filters
- the filter, created from theFilter
class. Must not benull
, must not containnull
- Returns:
- A uni emitting the list of keys containing time series matching the filters
-
tsRange
List<Sample> tsRange(K key, TimeSeriesRange range)
Execute the command TS.RANGE. Summary: Query a range in forward direction Group: time series- Parameters:
key
- the key name for the time series, must not benull
range
- the range, must not benull
- Returns:
- A uni emitting the list of matching sample
-
tsRange
List<Sample> tsRange(K key, TimeSeriesRange range, RangeArgs args)
Execute the command TS.RANGE. Summary: Query a range in forward direction Group: time series- Parameters:
key
- the key name for the time series, must not benull
range
- the range, must not benull
args
- the extra command parameters- Returns:
- A uni emitting the list of matching sample
-
tsRevRange
List<Sample> tsRevRange(K key, TimeSeriesRange range)
Execute the command TS.REVRANGE. Summary: Query a range in reverse direction Group: time series- Parameters:
key
- the key name for the time series, must not benull
range
- the range, must not benull
- Returns:
- A uni emitting the list of matching sample
-
tsRevRange
List<Sample> tsRevRange(K key, TimeSeriesRange range, RangeArgs args)
Execute the command TS.REVRANGE. Summary: Query a range in reverse direction Group: time series- Parameters:
key
- the key name for the time series, must not benull
range
- the range, must not benull
args
- the extra command parameters- Returns:
- A uni emitting the list of matching sample
-
-