*Redis TS.DELETERULE 命令

TS.DELETERULE 删除源时间序列和目标时间序列之间的聚合规则(降采样规则)。


*语法

TS.DELETERULE sourceKey destKey

*参数说明

参数 类型 必填 说明
sourceKey String 源时间序列键名
destKey String 目标时间序列键名

*返回值

  • OK:规则删除成功
  • Error:键不存在、规则不存在等

*时间复杂度

O(1)

*

*示例

*删除聚合规则

> TS.DELETERULE temperature:room1 temperature:room1:1min
OK

*删除多层聚合规则

> TS.DELETERULE temperature:room1 temperature:room1:5min
OK
> TS.DELETERULE temperature:room1:5min temperature:room1:hourly
OK

*常见错误

错误 原因 解决
TSDB: key does not exist 源或目标序列不存在 检查 key 名
TSDB: rule does not exist 聚合规则不存在 确认已通过 TS.CREATERULE 创建

*最佳实践

  • 删除规则前确认目标序列是否还需保留,可用 TS.DEL 清理目标数据
  • 删除规则不会自动删除目标序列的数据,已聚合的数据保留
  • 修改聚合规则时,先删除旧规则再创建新规则

*FAQ

Q1: 删除规则会删除目标序列吗? A: 不会,只删除聚合规则,目标序列的数据和元数据保留。

Q2: 可以删除后再重新创建吗? A: 可以,删除后目标序列需为空才能重新创建规则(如非空需先清理)。

Q3: 如何查看现有规则? A: 用 TS.INFO sourceKey 查看 Rules 字段。