超级表select count(*) 非常慢,是啥原因

【TDengine 使用环境】
测试/

【TDengine 版本】

3.4.0

【操作系统以及版本】

【部署方式】非容器部署

【集群节点数】

单机,4核8g的内存

【集群副本数】

【描述业务影响】

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

【遇到的问题:问题现象及影响】
超级表查询非常慢

【资源配置】

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

对超级表进行select count(*)的时候,速度非常慢

600多万的数据,竟然需要100多秒。

感觉根据ts来索引的话,也不是很多数据。
CPU 和 内存占用很大,难道是需要所有的数据全部load到内存再统计?

count 的话,不需要load原始数据,只读取数据块中meta部分。

这个查询中,涉及到多少子表?写入模式是什么样的?

可以执行 show talble distributed stb_device_arg_data\G; 看看数据的分别情况。

直直接内存不足了

子表数有多少?所在的数据库是几个 vgroups?

子表有 158550 ,vgroups没有指定,应该是2吧。