TS.GET
语法
TS.GET key [LATEST]
- 可用版本
- Redis Stack / TimeSeries 1.0.0
- 时间复杂度
- O(1)
从给定的时间序列获取具有最高时间戳的样本
必需参数
key
是时间序列的键名称。
可选参数
LATEST
(自 RedisTimeSeries v1.8 起)
当时间序列是压缩时使用。使用 LATEST
,TS.GET 报告最新(可能是部分)存储桶的压缩值。不使用 LATEST
,TS.GET 不会报告最新(可能是部分)存储桶。当时间序列不是压缩时,LATEST
被忽略。
最新存储桶中的数据可能是部分的。一个存储桶只有在收到一个新的样本后才会被关闭并压缩,该样本会打开一个新的最新存储桶。但是,在某些情况下,也需要最新(可能是部分)存储桶的压缩值。在这种情况下,请使用 LATEST
。
返回值
返回以下回复之一
示例
获取城市最新的温度测量值
创建一个时间序列来存储在特拉维夫测量的温度,并为 2023 年 1 月 1 日星期日添加四个测量值
127.0.0.1:6379> TS.CREATE temp:TLV LABELS type temp location TLV
OK
127.0.0.1:6379> TS.MADD temp:TLV 1672534800 12 temp:TLV 1672556400 16 temp:TLV 1672578000 21 temp:TLV 1672599600 14
接下来,获取最新的温度测量值(时间戳最高的温度)
127.0.0.1:6379> TS.GET temp:TLV
1) (integer) 1672599600
2) 14
获取城市最新的最高日温度
创建一个时间序列来存储在耶路撒冷测量的温度
127.0.0.1:6379> TS.CREATE temp:JLM LABELS type temp location JLM
OK
接下来,创建一个名为 dailyAvgTemp:JLM 的压缩时间序列,每个 24 小时包含一个压缩样本:从午夜到第二天午夜的所有测量值的最高值。
127.0.0.1:6379> TS.CREATE dailyMaxTemp:JLM LABELS type temp location JLM
OK
127.0.0.1:6379> TS.CREATERULE temp:JLM dailyMaxTemp:JLM AGGREGATION max 86400000
OK
为 2023 年 1 月 1 日星期日添加四个测量值,为 2023 年 1 月 2 日星期一添加三个测量值
127.0.0.1:6379> TS.MADD temp:JLM 1672534800000 12 temp:JLM 1672556400000 16 temp:JLM 1672578000000 21 temp:JLM 1672599600000 14
1) (integer) 1672534800000
2) (integer) 1672556400000
3) (integer) 1672578000000
4) (integer) 1672599600000
127.0.0.1:6379> TS.MADD temp:JLM 1672621200000 11 temp:JLM 1672642800000 21 temp:JLM 1672664400000 26
1) (integer) 1672621200000
2) (integer) 1672642800000
3) (integer) 1672664400000
接下来,获取最新的最高日温度;不报告最新(可能是部分)的存储桶
127.0.0.1:6379> TS.GET dailyMaxTemp:JLM
1) (integer) 1672531200000
2) 21
获取最新的最高日温度(时间戳最高的温度);报告最新(可能是部分)的存储桶
127.0.0.1:6379> TS.GET dailyMaxTemp:JLM LATEST
1) (integer) 1672617600000
2) 26