急!!! v5.1.0 tidb 内存oom!!

我们有这么个sql explain跑的贼慢 您看看怎么优化?
慢sql.sql (117.0 KB)
附上表结构:
dish_analysis_result_create (1.6 KB)

这个需要咱们提高 一下 explain analyze (SQL 优化的问题,最好提供 1、SQL 语句 2、explain analyze 信息 3、表结构(可脱敏)4、慢日志该SQL信息(这个其实包含了上面大部份信息))

1sql语句
慢sql.sql (117.0 KB)
2 explain analyze 信息
Projection_81.00rootdata_dish.dish_analysis_re_explain (95.7 KB)
3表结构
dish_analysis_result_create (1.6 KB)

另:我们开发说这里可能存在bug,在走提交你们github流程了


感谢反馈,慢日志,我一会看一下

1、你提供的 是 explain analyze 的信息吗,好像是 explian 的
2、你可以先 收集一下这个表的统计信息
3、这个表你们有 tiflash 吗?

没有入tiflash 我们正准备用下

先解决当前问题吧(tiflash 只是我看你的 SQL 可能比较适合,还能有资源隔离的好处,所以问一下而已)
1、先收集统计信息吧(建议看看其他的表也是否需要)
2、收集完统计信息后的 ,explain analyze 语句结果

explain analyze 的信息如下:
Projection_81.000roottimedish.dish_analysis_re_explain_analyze (96.6 KB)

另:请教下 我们给表添加索引,为什么卡在了 ?

1、你的执行计划,显示这个 SQL 执行时间很快,占用资源很少啊(具体是这个 SQL 导致的 内存吗,可以通过慢日志系统表,内存排序,找到对应的 SQL)
2、添加索引的问题,是一个索引执行完,下一个才能执行(可以看看 tidb- server woner 日志看是否异常)

1 个赞

1
现在发现慢 应该是我们表的索引没设计好
所以我们在给表添加索引,之前个索引是2天前加的至今未完成 请问有什么办法提高加索引的速度吗?

并且我用admin show ddl jobs 查到之前的ddl语句


然后用admin cancel ddl jobs 1682 去kill, 会报错说找不到Jobs:
image

2
执行 SELECT tidb_is_ddl_owner(); 显示截图 这有什么影响吗?
image

突然看到了,插句嘴,具体还是看大佬的,这个是调整加索引的速度
https://docs.pingcap.com/zh/tidb/stable/troubleshoot-cpu-issues

感谢~

提升速度的方法就是上面的帖子,ddl owner 的问题不是问题(0、1代表不同含义而已)
1、关于索引 job 的问题,我其实有点晕(现在是有异常还是只是在排队?)

索引job问题Ok了 看最后个 STATE来判断

:call_me_hand::call_me_hand::call_me_hand:

此话题已在最后回复的 1 分钟后被自动关闭。不再允许新回复。