【 TiDB 使用环境】生产环境 /测试/ Poc
【 TiDB 版本】7.5
【复现路径】做过哪些操作出现的问题
【遇到的问题:问题现象及影响】
比如以下执行计划,我觉得是先执行的是TableFullScan_163,不知道对不对?
最先执行的是179,可以参考oralce的执行计划。
是不是这么理解:
├─Selection_173(Build)
└─HashJoin_120(Probe)
这两个是同样缩进,先执行Build,所以执行Selection_173(Build),然后先执行缩进最多的TableFullScan_179
Build 总是先于 Probe 执行,同级缩进,先build后probe
简单来说就是从右到左,从下到上。需要注意的是,有一些都并行执行的,不分先后。
1 个赞
按照Oracle最右最上先执行的原则应该是163,因为他最右,缩进最深。
个人更加愿意是151,多表关联的时候时都是两两关联,按哈希关联层数算,151是最里面的。
Oracle客户端有类似单步的功能可以查看执行计划的顺序,TiDB不知道会不会出类似GUI客户端。
tidb按手册是并发执行,我想了下执行计划转成个二叉树,179 163 151 154 170是5个叶子结点,应该可以同时执行,无所谓先后
嗯,理论上分布式环境并发执行最科学的。
Oracle可能是因为多是本地执行,并发最终到底层还是得排队。
可能是显示问题
同级别先上后下,不同级别先右后左
应该是工具UI显示的问题吧。
此话题已在最后回复的 60 天后被自动关闭。不再允许新回复。