炼气期DBA
(Ti D Ber Ic01xw Vm)
1
请问Tikv CPU使用率有时候达到几千了, 这个一般是SQL引起的吧,在没有业务的时候就降到几百了。
这种好查,在topsql里看下是哪些sql引起的,看下执行计划,大概率有全表扫描的sql。
炼气期DBA
(Ti D Ber Ic01xw Vm)
3
比如我把鼠标定位到直方图高峰柱,看到的那几条SQL,只有一条5.5s慢的啊,其它的都是ms,这累计CPU耗时,即使是按次数统计,这ms的SQL执行也挺快的吧,能算是TOP SQL吗? 
炼气期DBA
(Ti D Ber Ic01xw Vm)
5
我们执行SQL都是在tidb节点执行啊,为监控怎么还有显示Tikv节点的Topsql
tidb是存算分离的架构,存在tikv,算在tidb。sql都是在tidb节点执行没错,但是sql所读取数据都是由tikv来执行的,因此你会看到tikv也有topsql。哪一步在哪一端执行可以在执行计划中看到。
Kongdom
(Kongdom)
12
算子下推是把计算下推,不是把sql语句下推,例如官方的这个示例:
Kongdom
(Kongdom)
13
又去把北京大爷的指南翻出来看了一遍。这里有一些关于TiKV CPU的指南。
异乡的大人
(Ti D Ber 2 Qs S2z Ws)
15
可能是大量低效 SQL 导致 TiKV 做了过多无用计算
异乡的大人
(Ti D Ber 2 Qs S2z Ws)
16
可以试试通过 TiDB 的监控和系统表,筛选出业务高峰期的高 CPU SQL,重点关注 “执行次数多” 或 “单条执行耗时久” 的语句
Kongdom
(Kongdom)
20