TDengine存储占用磁盘空间异常

【TDengine 使用环境】
生产环境

【TDengine 版本】3.0.5.0

【操作系统以及版本】CENTOS7.4

【部署方式] 非容器部署

【集群节点数】单机节点

【集群副本数】1

【描述业务影响】

【遇到的问题:问题现象及影响】

使用taos存储历史数据,建库建表语句如下,CREATE DATABASE IF NOT EXISTS historical STT_TRIGGER 16 VGROUPS 4;
use historical;
CREATE STABLE IF NOT EXISTS historical_data(ts timestamp,data float,data2 float) TAGS(name binary(24));

现在有100多万个子表,每一个子表每5分钟存储一次数据,现在每一张子表大约有8000条数据,约28天数据,磁盘占用已超过30T,有哪些参数可以调整配置

【资源配置】

  • cpu核心数64,内存128G
  1. 4个Vgroups不够,推荐一个vnode对应1~10万子表,至少得10个vnode,如果查询频率高的话,可以提升到50个vnode。
  2. stt_trigger按默认设置2即可。可以动态调整:alter database test stt_trigger 2;
    调整vgroups个数只能重新建库,做历史数据迁移。
    进行了如下两步,可以解决空间异常问题。

建库时参数buffer 2028 stt_trigger 2 vgroups 32;
其它可以不动,看下最终效果。