执行计划先后执行顺序问题


附件OBCE 培训资料里的文档,
,这个执行计划官方文档写的是先执行的是ID 7 (TABLE SCAN T1) ,请问OB执行计划先后顺序有什么规律吗?看着好像 和 oracle/mysql 都有点区别,多谢

3 个赞
  1. 执行顺序遵循 “自底向上、从右到左” 的原则。
  2. MATERIAL 算子用于物化下层算子的输出数据,优化查询性能。
  3. 在你的例子中,执行顺序为:
7.TABLE SCAN -> 6.EXCHANGE OUT DISTR -> 5.EXCHANGE IN DISTR -> 4.MATERIAL
-> 3.TABLE SCAN -> 2.EXCHANGE OUT DISTR -> 1.EXCHANGE IN DISTR -> 0.NESTED-LOOP JOIN

MATERIAL 物化的含义

  • 将下层算子输出的数据缓存到内存或临时存储中,供后续算子重复使用。
  • 主要用于避免重复计算和满足某些算子对完整数据的需求。
2 个赞

由上至下:在执行计划中一般含有多个节点,相同级别(或并列)的节点,靠上的优先执行,靠下的后执行
从右向左:在某个节点下还存在多个子节点,先从最靠右的子节点开始执行。

4 个赞

十分感谢

1 个赞

感谢,感谢

1 个赞

OB跟oracle 和MYSQL是一样的

1 个赞

好的兄弟,感谢感觉不太一样,我在详细了解一下哈

学习总结经验 :+1: :+1: :+1: