给表加入tiflash造成语句变慢是什么原因,tiflash用在什么情况比较好,也有可能语句执行时间本身就时快时慢,希望大佬们通过执行计划把把脉

【 TiDB 使用环境】生产环境
【 TiDB 版本】

【复现路径】做过哪些操作出现的问题
【遇到的问题:问题现象及影响】
【资源配置】
【附件:截图/日志/监控】


test4.sql (13.2 KB)
未加入执行计划.xlsx (12.3 KB)
加之后执行计划.xlsx (12.3 KB)

语句发下呢,是用于查询某一列么?

test4.sql (13.2 KB)

上执行计划

而且这个语句运行有时候慢有时候快,也不知道为什么

能开Dashboard吗?找到这条sql,看看生成了多少个执行计划

[quote=“Jjjjayson_zeng, post:5, topic:1018544, full:true”]
而且这个语句运行有时候慢有时候快,也不知道为什么
[/quot
我感觉可能这个表加不加tiflash影响不大,主要是语句不稳定

未加入.xlsx (12.3 KB)
加之后.xlsx (12.3 KB)

执行计划您帮忙看看呢,我们现在tidb我看了cpu也不太满

我看你这边 加之后 更快了啊,未加入是3min0.3s ,加入后 1min2.6s :joy:

所以说不稳定啊,之前不加50秒

我也搞不懂tidbcpu也没有满,为什么跑个语句3分钟

是sql写的哪有问题吗?时快时慢的

执行计划没改变,但其他有两个点耗费的时间差异比较大
1、aa 和 bb hash join耗时
1min 14.5s 和 43.1s

2、hashjoin_108 耗时
1min 和 3min

看下几个节点的内存是不是没了

目测还有

你tidb什么版本

:joy:
主要是我不能理解为什么hash join,两条sql差距这么大

└─HashJoin_108(Probe)	
238266.09	
511515	
root		
time:1m1.7s, loops:503, build_hash_table:{total:2.85s, fetch:2.81s, build:40.8ms}, probe:{concurrency:5, total:5m8.3s, max:1m1.7s, probe:2m12.8s, fetch:2m55.6s}	
inner join, equal:[eq(lbx.atdpersonpaycode.personid, lbx.atdemployeecalendar.personid) eq(lbx.atdpersonpaycode.timecarddate, lbx.atdemployeecalendar.calendardate)]	
43.6 MB	
34.6 MB

└─HashJoin_108(Probe)	
238266.09	
511519	
root		
time:2m59.4s, loops:503, build_hash_table:{total:4.45s, fetch:4.28s, build:169.3ms}, probe:{concurrency:5, total:14m57.2s, max:2m59.4s, probe:11m11.5s, fetch:3m45.6s}	
inner join, equal:[eq(lbx.atdpersonpaycode.personid, lbx.atdemployeecalendar.personid) eq(lbx.atdpersonpaycode.timecarddate, lbx.atdemployeecalendar.calendardate)]	
43.8 MB	
34.6 MB

我也不理解,很奇怪

你说要是cpu很慢增加一台机器也行,但是也没有啊