Interface ReactiveTimeSeriesCommands<K>

Type Parameters:
K - the type of the key
All Superinterfaces:
ReactiveRedisCommands
All Known Implementing Classes:
ReactiveTimeSeriesCommandsImpl

@Experimental("The commands from the time series group are experimental") public interface ReactiveTimeSeriesCommands<K> extends ReactiveRedisCommands
Allows executing commands from the time series group (requires the Redis Time Series module from Redis stack). See the time series command list for further information about these commands.

  • Method Details

    • tsCreate

      io.smallrye.mutiny.Uni<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 be null
      args - the creation arguments.
      Returns:
      A uni emitting null when the operation completes
    • tsCreate

      io.smallrye.mutiny.Uni<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 be null
      Returns:
      A uni emitting null when the operation completes
    • tsAdd

      io.smallrye.mutiny.Uni<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 be null
      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.
      Returns:
      A uni emitting null when the operation completes
    • tsAdd

      io.smallrye.mutiny.Uni<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 be null
      timestamp - the (long) UNIX sample timestamp in milliseconds
      value - the numeric data value of the sample
      Returns:
      A uni emitting null when the operation completes
    • tsAdd

      io.smallrye.mutiny.Uni<Void> tsAdd(K key, double value)
      Execute the command TS.ADD. Summary: Append a sample to a time series Group: time series

      Unlike tsAdd(Object, long, double), set the timestamp according to the server clock.

      Parameters:
      key - the key name for the time series. must not be null
      value - the numeric data value of the sample, must not be null
      Returns:
      A uni emitting null when the operation completes
    • tsAdd

      io.smallrye.mutiny.Uni<Void> tsAdd(K key, double value, AddArgs args)
      Execute the command TS.ADD. Summary: Append a sample to a time series Group: time series

      Unlike tsAdd(Object, long, double, AddArgs), set the timestamp according to the server clock.

      Parameters:
      key - the key name for the time series must not be null
      value - the numeric data value of the sample.
      args - the creation arguments.
      Returns:
      A uni emitting null when the operation completes
    • tsAlter

      io.smallrye.mutiny.Uni<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 be null
      args - the alter parameters, must not be null
      Returns:
      A uni emitting null when the operation completes
    • tsCreateRule

      io.smallrye.mutiny.Uni<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 be null
      destKey - the key name for destination (compacted) time series. It must be created before TS.CREATERULE is called. Must not be null.
      aggregation - the aggregation function, must not be null
      bucketDuration - the duration of each bucket, must not be null
      Returns:
      A uni emitting null when the operation completes
    • tsCreateRule

      io.smallrye.mutiny.Uni<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 be null
      destKey - the key name for destination (compacted) time series. It must be created before TS.CREATERULE is called. Must not be null.
      aggregation - the aggregation function, must not be null
      bucketDuration - the duration of each bucket, must not be null
      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).
      Returns:
      A uni emitting null when the operation completes
    • tsDecrBy

      io.smallrye.mutiny.Uni<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 be null
      value - the numeric data value of the sample, must not be null
      Returns:
      A uni emitting null when the operation completes
    • tsDecrBy

      io.smallrye.mutiny.Uni<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 be null
      value - the numeric data value of the sample, must not be null
      args - the extra command parameters
      Returns:
      A uni emitting null when the operation completes
    • tsDel

      io.smallrye.mutiny.Uni<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 series

      The 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 be null
      fromTimestamp - the start timestamp for the range deletion.
      toTimestamp - the end timestamp for the range deletion.
      Returns:
      A uni emitting null when the operation completes
    • tsDeleteRule

      io.smallrye.mutiny.Uni<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 be null
      destKey - the key name for destination (compacted) time series. Note that the command does not delete the compacted series. Must not be null
      Returns:
      A uni emitting null when the operation completes
    • tsGet

      io.smallrye.mutiny.Uni<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 be null
      Returns:
      A uni emitting a Sample, i.e. a couple containing the timestamp and the value.
    • tsGet

      io.smallrye.mutiny.Uni<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 be null
      latest - used when a time series is a compaction. With LATEST set to true, 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

      io.smallrye.mutiny.Uni<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 be null
      value - the numeric data value of the sample, must not be null
      Returns:
      A uni emitting null when the operation completes
    • tsIncrBy

      io.smallrye.mutiny.Uni<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 be null
      value - the numeric data value of the sample, must not be null
      args - the extra command parameters
      Returns:
      A uni emitting null when the operation completes
    • tsMAdd

      io.smallrye.mutiny.Uni<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.
      Returns:
      A uni emitting null when the operation completes
    • tsMGet

      io.smallrye.mutiny.Uni<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 be null
      filters - the filters. Instanced are created using the static methods from Filter. Must not be null, or contain a null 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

      io.smallrye.mutiny.Uni<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 from Filter. Must not be null, or contain a null 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

      io.smallrye.mutiny.Uni<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 be null
      filters - the filters. Instanced are created using the static methods from Filter. Must not be null, or contain a null 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

      io.smallrye.mutiny.Uni<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 be null
      args - the extra command parameters
      filters - the filters. Instanced are created using the static methods from Filter. Must not be null, or contain a null 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

      io.smallrye.mutiny.Uni<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 be null
      filters - the filters. Instanced are created using the static methods from Filter. Must not be null, or contain a null 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

      io.smallrye.mutiny.Uni<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 be null
      args - the extra command parameters
      filters - the filters. Instanced are created using the static methods from Filter. Must not be null, or contain a null 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

      io.smallrye.mutiny.Uni<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 the Filter class. Must not be null, must not contain null
      Returns:
      A uni emitting the list of keys containing time series matching the filters
    • tsRange

      io.smallrye.mutiny.Uni<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 be null
      range - the range, must not be null
      Returns:
      A uni emitting the list of matching sample
    • tsRange

      io.smallrye.mutiny.Uni<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 be null
      range - the range, must not be null
      args - the extra command parameters
      Returns:
      A uni emitting the list of matching sample
    • tsRevRange

      io.smallrye.mutiny.Uni<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 be null
      range - the range, must not be null
      Returns:
      A uni emitting the list of matching sample
    • tsRevRange

      io.smallrye.mutiny.Uni<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 be null
      range - the range, must not be null
      args - the extra command parameters
      Returns:
      A uni emitting the list of matching sample