Login
网站首页 > 文章中心 > 其它

TiDB与MySQL的SQL差异及执行计划简析

作者:小编 更新时间:2023-08-17 07:54:02 浏览量:39人看过

第一段: 前言导读

第二段: 建表SQL语法差异优化建议

TiDB与MySQL的SQL差异及执行计划简析-图1

第三段: 查询SQL语法差异优化建议

第四段: SQL执行计划差异优化建议

第五段: TiDB执行计划分析简介

1. 在开始实际案例分析前,我们先看下执行计划中每列的含义:

引自:https://docs.pingcap.com/zh/tidb/stable/sql-statement-explain和https://docs.pingcap.com/zh/tidb/stable/sql-statement-explain-analyze

2. 执行计划优化的几个关键点:

IndexRangeScan

③ 实际场景分析

l SQL1

*1:IndexLookUp算子:根据索引获取结果记录

优化前,两表直接join:

TiDB与MySQL的SQL差异及执行计划简析

*1:IndexJoin算子:根据表s索引,与表m关联起来

总结:整体sql因为是先join在limit,tidb无法将limit操作下推,导致主表大量回表查询,影响性能

优化后,先子查询再join:

TiDB与MySQL的SQL差异及执行计划简析

总结:整体sql因为是先limit再join,tidb将limit下推至tikv,大大较少了主表的回表查询数据量,提升性能

第六段: 小结

以上就是土嘎嘎小编为大家整理的TiDB与MySQL的SQL差异及执行计划简析相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!

版权声明:倡导尊重与保护知识产权。未经许可,任何人不得复制、转载、或以其他方式使用本站《原创》内容,违者将追究其法律责任。本站文章内容,部分图片来源于网络,如有侵权,请联系我们修改或者删除处理。

编辑推荐

热门文章