SQL执行耗时异常

【 TiDB 使用环境】生产环境
【 TiDB 版本】v6.5.2
【复现路径】做过哪些操作出现的问题
【遇到的问题:问题现象及影响】执行同一类型的sql耗时差异性非常大,有时几百毫秒有时需要几分钟,举一个样例如下图


【资源配置】进入到 TiDB Dashboard -集群信息 (Cluster Info) -主机(Hosts) 截图此页面

【附件:截图/日志/监控】

两条sql贴到客户端手工执行下,速度差异大吗?

同一类型的sql这个咋判断的

我们也遇到过,手动执行应该很快,这个和环境中实际执行别的sql有影响,能做的就是尽可能的优化这条语句

同一个类型,查询条件不一样的原因吧,是不是查一天数据和 1 年数据导致的。

就是同一条sql不同的条件

查询条件都是主键

这个要看执行计划才知道,分别带入条件手工执行下,感觉应该两个执行计划差役比较大,不同条件可能扫描的数据量可能相差很大

1 个赞

好像是因为代价模型2,对于join的优化不太靠谱,我使用STRAIGHT_JOIN去替换JOIN sql执行消息得到了很大的提升,也尝试使用代价模型1对比一下sql执行效率也比代价模型2要好

统计信息更新下

最好把完整的执行计划发一下,截图的信息不是很全,有些信息看不到

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