ThingsBoard 如何设置遥测的过期时间
正文与配图来自原稿。存储引擎不同,TTL 机制也不同。
1、概述
遥测可落在 PostgreSQL / Timescale 或 Cassandra。两种存储设置过期时间的方式不一样。
2、使用 PostgreSQL 或 Timescale
PostgreSQL / Timescale 不支持 每行插入时带 TTL。只能用 SQL_TTL_* 一类环境变量做定期清理,在 thingsboard.yml 中配置:

3、使用 Cassandra
Cassandra 支持插入行级 TTL,常见三种方式:
方式一:系统级环境变量
用 TS_KV_TTL 配默认 TTL(如在 docker-compose.yml 中指定):

方式二:租户配置
在租户配置中指定遥测过期时间:

方式三:规则节点 / 消息 metadata
在 save timeseries 节点覆盖默认值,或在消息 metadata 中设置 TTL:


4、优先级
save timeseries 或 metadata 中的 TTL > 租户配置 > docker-compose / 环境变量默认值
5、小结
- SQL 系:靠周期清理,规划好
SQL_TTL_*。 - Cassandra:可分层覆盖 TTL;业务差异大时优先节点或 metadata。
- 另见:详解遥测数据、Cassandra 最新遥测不再推荐。
