插入性能问题

【TDengine 使用环境】
测试

【TDengine 版本】
3.4.0

【操作系统以及版本】
centOS 7.9

【部署方式】容器/非容器部署
非容器

【集群节点数】
3

【集群副本数】

3

【描述业务影响】
批量写入数据较慢。

【问题复现路径/shan】做过哪些操作出现的问题

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

建库语句
CREATE DATABASE ja_iiot_ts_tag VGROUpS 100 CACHEMODEL ‘none’ PAGES 4096 PAGESIZE 16 WAL_LEVEL 0 DURATION 1d STT_TRIGGER 4 ;
超级表建表语句
CREATE STABLE IF NOT EXISTS ts_kv (ts TIMESTAMP, tag_val DOUBLE ) TAGS (tag_id INT)
每个采集点一个子表
flink 30 并行度写入 性能在70W点左右且不稳定,想知道影响写入性能的点在哪,有什么调优的方法。

【资源配置】
3台128C128G集群

【报错完整截图】(不要大段的粘贴报错代码,论坛直接看报错代码不直观)

一般优化方式:

  1. 使用Websocket方式写入
  2. 使用STMT2的高效写入模式
  3. 设置Buffer,找到Buffer的最优值。
    1. stt_trigger:用于控制 TSDB 数据落盘策略以及触发后台合并文件的文件个数。企业版的默认配置为 2,而开源版仅能配置为 1。当 stt_trigger = 1 时,适用于表数量少但写入频率高的场景;当 stt_trigger > 1 时,则更适合表数量多但写入频率低的场景。

更多的细节调优,需要企业版服务支持。

如果表数量多,写入也多的场景,因为stt_trigger只能配置为1的原因,插入性能会打折扣对吧。

这个理解是对的。不过如果都是单列模型,且数据写入是规则的,那影响有限。


像这种有规律的波段式插入,式tdengine后台定时的在做整理吗