是否允许自动生成弹射式执行计划(auto_use_eje)
📄字数 992
👁️阅读量 加载中...
引入版本
v11.0.0
功能描述
是否允许自动生成弹射式并行执行计划。
参数属性
属性 | 属性值 |
---|---|
参数类型 | BOOLEAN |
默认值 | FALSE |
取值范围 | TRUE,FALSE |
影响范围 | 系统级 |
修改方式 | 在线修改,立即生效 |
使用场景说明
- auto_use_eje 控制系统为查询规划执行计划的行为。
auto_use_eje | 作用及影响 |
---|---|
true | 系统会自行判断是否使用并行方式执行(除开个别不符合并行执行场景外的其它大多数场景,系统将根据路径的扫描代价 与 auto_eje_cast 来判断是否使用并行执行),对于符合并行执行的查询,系统将采用该参数值作为并行执 行的并行度。 |
false | 默认不使用并行,除非 SQL 中显式指定PARALLEL 属性。 |
- 不符合并行执行的场景主要有:
场景 |
---|
auto_eje_cast = -1(系统禁用并行执行) |
use_index_order = true(查询中 ORDER BY 排序使用索引序) |
查询中包含 WITH 语句 |
查询中访问的目标表为文件表 |
查询中包含过程函数调用节点 |
查询中包含只能在本地计算的部分聚合函数 GROUP_CONCAT、LISTAGG |
查询中包含只能在本地计算的部分系统函数 LAST_INSERT_ID、SETSEED、RANDOM、RANDOM_NORMAL、CHECK_AUTH、IS_ROLE_MEMBER、SYS_USERID、 CURRENT_USERID、CURRENT_SCHEMAID、CURRENT_SCHEMA、CURRENT_USER、USER、SYSTEM_USER、SESSION_USER、 CURRENT_DB、CURRENT_DATABASE、DATABASE、CURRENT_DB_ID、SQLCODE、SQLERRM、CURRENT_IP、DBTS、 IS_SYS_DBA、USERENV、CURRENT_NODEID、MAX_NODE_NUM、GET_INSTALL_PATH、GET_WORK_PATH、GET_TYPE_SPACE、 SYS_CONTEXT |
存在依赖于上层的子查询表达式 |
示例
- 在线修改 auto_use_eje
sql
SQL> set auto_use_eje to false;
Execute successful.
Use time:3 ms.
- 在线查看 auto_use_eje
sql
SQL> show auto_use_eje;
+--------------+
| AUTO_USE_EJE |
+--------------+
| F |
+--------------+
(1 row)
Use time:0 ms.