添加表scatter调度后pd cpu暴涨10-20倍

【 TiDB 版本】 7.5.4
3张表添加scatter调度后 CPU 10-20倍 ,之后逐步取消每个表的scatter,每减少一个表 CPU利用率下降 300%-400% 。 内存也有增加

image

你先加一个 调度任务算完了 再加一个试试呢 :thinking:

难道 scatter 相关算法没有限流什么的 :thinking:

没用,一添加就涨
image

添加一个之后观察一段时间呢。我理解如果表分布很不均衡,生成 task 确实是需要消耗很多 cpu 的。

你可以dashboard 点下 cpu 高的时间段里面 pd 的火焰图。发上来 我瞅瞅

一直持续高,如果是开始有调度产生高那么几下还能理解
image

profiling_2024-11-28_13-57-03.zip (174.9 KB)


看起来 cpu 就是在调度 (53%)和 gc 回收(34%)上.
至于为啥这么多和久是不是预期的就不确定了。我摇个研发瞅瞅 :thinking:

@h5n1 您好,麻烦提供一下加入 scatter clinic 监控,以及这几张表中任意一张表的数据量,region 个数。谢谢。

每个表的region数量,region数量太多了?现在开了一个表,从12:35开始截止现在已经跑了3个多小时了,看多久能跑完吧,有下降趋势
image

链接:百度网盘 请输入提取码
提取码:g3go

@jhm633 跑到了下午6点左右 pd cpu降下来趋于平稳,但利用率还是有之前的2-3倍,如果是由于region数量多, pd在检查时消耗cpu高,这个可以理解,但是感觉这块还是可以优化降低cpu利用率,比如给这些region打个标记 调度后就固定在主机上