zoukankan      html  css  js  c++  java
  • Oracle ——概述 CBO 优化器

    http://www.toadworld.com/KNOWLEDGE/KnowledgeXpertforOracle/tabid/648/TopicID/CBO/Default.aspx

    基于规则的优化器(rule-based optimizer,RBO)的缺点之一是它遵循一组规则,而且一直是,所有时间内遵循。这导致了一致的执行计划,但往往也导致了低效的执行计划。认识到基于规则的优化器的缺点,Oracle 在 Oracle 7.1 引入了基于成本的优化(cost-based optimizer,CBO)以修正这个问题。

    对 Oracle 和我们来说,幸运的是,基于成本的优化器(CBO)在 8i 和 9i 做了更多的改进。更大的“改进”是,Oracle 打算在 Oracle 10i 中去掉 RBO,这就要小心。

    基于成本的优化器是一个程序。它的任务是在解析期间分析你的 SQL 语句,确定访问你请求数据的最佳方式。它使用统计信息,这需要 DBA 创建。例如,索引或全表扫描,将是最有效的数据访问方式。根据一些不同的因素来计算,这些因素包括:

    • 被访问表的总行数
    • 被访问列的数据密度
    • 存在的索引以及这些索引的类型和内容
    • 平均的行长度
    • 返回列的类型
    • 各种数据库参数

    CBO 将查看所有不同的因素,通过这些不同的可能的访问路径的周期。当通过这些访问路径时,CBO 将分配给这些路径代价。一旦 CBO 完成分析,它就返回具有最低代价的计划来解析,并使用该计划。

  • 相关阅读:
    HTML5新媒体元素
    概述
    (一)最小可行化应用
    JSON
    ajax的工作原理
    R语言学习笔记(四)
    R语言学习笔记(一)
    转:禅道的数据库结构
    转:bug的分类和等级
    转:如何定义 Bug 的优先级
  • 原文地址:https://www.cnblogs.com/liuning8023/p/2677754.html
Copyright © 2011-2022 走看看