StarRocks2.3.2 pipeline引擎性能问题


这是查询数量图,可以看出来查询数量没有明显的变化,但是慢查询的数量每隔5分钟都有一波突增

并且我手动执行这些突增里的慢查询SQL,实际上很快响应,所以不是SQL自身的原因。
目前怀疑是线程/资源到达了瓶颈,或者因为其他原因阻塞了线程,导致平时很快响应的SQL在那一分钟的那几秒响应的很慢。
期望通过调整配置解决这个问题

已经排除了磁盘IO的干扰,磁盘IO一直很平均,没有一个有规律的明显波动

还有一个怀疑方向是读写锁,要查询的文件在那个时刻被写锁占用了,导致不能读取,因此读锁需要等待写锁释放导致变慢了。

集群目前跑的任务多吗?并发高不高?

任务很多,并发也蛮高的,查询差不多100qps

直接贴的那个不全,我先大致看下


慢查询不是集中在某一分钟,而是集中在某几秒钟,每隔整5分钟出现一次,都在第8秒的前后一两秒集中出现

你关闭 pipeline的时候 parallel_fragment_exec_instance_num 值是1吗?

image
是的


我在昨天14:37分左右关闭了pipeline引擎,慢查询数量减少的很明显

set global pipeline_dop = 1. 后再看看。

要打开pipeline引擎再试试吗

嗯嗯,打开 pipeline 引擎,然后 set global pipeline_dop = 1 再试试看

配置好了,打开了引擎,观测十几分钟应该就能看出效果

我还顺便配置了pipeline_profile_level = 2,这样输出的profile信息全一些


从红线处切的,目前来看效果不理想,慢查询数量明显上升

您方便上传一个耗时比较久的 pipeline profile 吗?

开启 (377.4 KB)
因为集群已经开了pipeline我没办法和自身不开对比,我和另一个2.2.4版本不开pipeline的集群对比了一下,表的数据量是一样的,那个集群0.5s,这个集群1s多

我接下来把pipeline关了,在和自身对比一下,输出一个profile