TS.GET

获取给定时间序列中时间戳最高的样本

语法

TS.GET key [LATEST]

引入版本:1.0.0

复杂度摘要:O(1)

获取给定时间序列中时间戳最高的样本。从 Redis 8.6 开始,NaN 值包含在结果中。

示例

必需参数

key

是时间序列的键名称。

可选参数

LATEST(自 RedisTimeSeries v1.8 起)

当时间序列是压缩时使用。使用 LATEST,TS.GET 报告最新(可能是部分)存储桶的压缩值。如果没有 LATEST,TS.GET 不会报告最新(可能是部分)存储桶。当时间序列不是压缩时,LATEST 被忽略。

压缩的最新桶中的数据可能是部分的。存储桶是 关闭,并且仅在新样本到达时才进行压缩,该新样本将 打开 变为新的 最新的 存储桶。然而,在某些情况下,还需要最新(可能是部分)存储桶的压缩值。在这种情况下,请使用 LATEST。

示例

Get latest measured temperature for a city

创建一个时间序列来存储在特拉维夫测量的温度,并添加 2023 年 1 月 1 日星期日的四个测量值

127.0.0.1:6379> TS.CREATE temp:TLV LABELS 类型临时位置 TLV OK 127.0.0.1:6379> TS.MADD temp:TLV 1672534800 12 temp:TLV 1672556400 16 temp:TLV 1672578000 21温度:TLV 1672599600 14

接下来获取最新测量的温度(时间戳最高的温度)

127.0.0.1:6379> TS.GET 温度:TLV 1) (整数) 1672599600 2) 14

Get latest maximal daily temperature for a city

创建一个时间序列来存储在耶路撒冷测量的温度

127.0.0.1:6379> TS.CREATE temp:JLM LABELS 类型临时位置 JLM OK

接下来,创建一个名为 每日平均温度:JLM 的压缩时间序列,其中每 24 小时包含一个压缩样本:从午夜到下一个午夜进行的所有测量的最大值。

127.0.0.1:6379> TS.CREATE dailyMaxTemp:JLM LABELS 类型临时位置 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 温度:JLM 1672534800000 12 温度:JLM 1672556400000 16 温度:JLM 1672578000000 21 温度:JLM 1672599600000 14 1)(整数) 1672534800000 2) (整数) 1672556400000 3) (整数) 1672578000000 4) (整数) 1672599600000 127.0.0.1:6379> TS.MADD 温度:JLM 1672621200000 11 温度:JLM 1672642800000 21 温度:JLM 1672664400000 26 1) (整数) 1672621200000 2) (整数) 1672642800000 3) (整数) 1672664400000

接下来,获取最新的每日最高温度;不报告最新的(可能是部分的)存储桶

127.0.0.1:6379> TS.GET dailyMaxTemp:JLM 1) (整数) 1672531200000 2) 21

获取最新的每日最高温度(时间戳最高的温度);报告最新的(可能是部分的)存储桶

127.0.0.1:6379> TS.GET dailyMaxTemp:JLM LATEST 1) (整数) 1672617600000 2) 26

Redis Software 与 Redis Cloud 兼容性

Redis
软件
Redis
Cloud
说明
✅ 支持
✅ 灵活且每年一次
✅ 免费和固定

返回值

RESP2

以下之一: * 单个 (整数回复, 简单字符串回复) 对的 数组回复,表示具有最高时间戳的样本的(时间戳,值)。 * 当时间序列为空时,数组回复 为空。 * 简单错误回复 在这些情况下:无效参数、错误的键类型、键不存在等。

RESP3

以下之一: * 单个 (整数回复, 双重回复) 对的 数组回复,表示具有最高时间戳的样本的(时间戳,值)。 * 当时间序列为空时,数组回复 为空。 * 简单错误回复 在这些情况下:无效参数、错误的键类型、键不存在等。

参见

TS.MGET

Redis时间系列

资料来源:Redis 官方 TS.GET 文档;中文内容参考 Redis 文档许可。