思维导图
Optimizer概述
Oracle数据库中的优化器是sql分析和执行的优化工具,它负责制定sql的执行计划,也就是它负责保证sql执行效率最高.
比如优化器决定Oracle是以什么样的方式方式访问数据,是全表扫描(Full Table Scan) 、索引范围扫描(Index Range Scan)还是全索引快速扫描(INDEX Fast Full Scan,INDEX_FFS).
对于多表关联查询,它负责确定表之间以一种什么样的方式来关联,比如Hash Join 还是 nesTED LOOPS或者是MERGE JOIN。
这些因素直接决定着sql的执行效率,所以优化器是sql执行的核心,它做出的执行计划的好坏,直接决定了sql的执行效率。
Oracle的优化器有两种
- RBO 基于规则的优化器
- CBO 基于代价的优化器
从ORACLE10G开始,RBO已经被弃用(但是我们依然可以通过HINT的方式使用它)。
RBO
RBO概述
案例说明
CBO
RBO概述
案例说明
原文地址:https://www.jb51.cc/oracle/211134.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。