执行计划
优化器为某条 SQL 生成的执行过程,一般使用操作符树来表示。
当执行计划只涉及到单表或分区表的单个分区,且该表或分区在本节点时,该计划为“本地计划”。
当执行计划只涉及到单表或分区表的单个分区,且该表或分区在其他节点时,该计划为“远程计划”。
当执行计划涉及到多表或多分区时,该计划为分布式计划。
访问某张表时使用的访问方式,包括主表访问和二级索引访问两类。具体参见 访问路径。
多表联接时各表之间的联接顺序,目前 OceanBase 数据库仅支持左深树的联接顺序。具体参见 联接顺序。
执行两表联接时使用的算法,包括 NESTED LOOP JOIN、MERGE JOIN 和 HASH JOIN 三种。
通过对用户查询做等价的改写以便于生成最佳执行计划的过程。
用户通过给定 outline 来指定某条 SQL 的执行计划的过程,具体参见 计划绑定。
一种计划演进的机制。当优化器生成新的计划时,需要通过演进机制来保证这个计划的性能不会出现回退,如果出现回退,就拒绝使用该计划,否则使用该计划。
一种可以让优化器每一个参数化 SQL 存储多个计划,并根据 SQL 语句中谓词的选择率空间选择合适的计划的机制。
分布式计划以数据重分布点为边界,切分为可以并行执行的逻辑子计划,每个子计划由一个 DFO 进行封装。
备案信息: 粤ICP备15087711号-2
Copyright © 2008-2024 啊嘎哇在线工具箱 All Rights.
本站所有资料来源于网络,版权归原作者所有,仅作学习交流使用,如不慎侵犯了您的权利,请联系我们。