科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道Oracle Optimizer:迁移到使用基于成本的优化器

Oracle Optimizer:迁移到使用基于成本的优化器

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

  3.2.3   可用CBO模式      CBO有两种运行模式:ALL_ROWS和FIRST_ROWS.      FIRST_ROWS的目标是尽可能最快的返回行.这种模式告诉优化器响应时间是最重要的。

作者:中国IT实验室 来源:中国IT实验室 2007年10月7日

关键字: ORACLE

  • 评论
  • 分享微博
  • 分享邮件

在本页阅读全文(共3页)


  系列之二包含影响优化器选择执行计划的初始化参数和Oracle内部隐藏参数,合理设置这些参数对于优化器是相当重要的。
  
  6.影响优化器的初始化参数
  
  除了生成统计资料之外,下面提及的参数设置在你的系统正常工作中扮演着极重要的角色.这些设置将大多依赖于你想创建何种类型的环境。联机,批处理,数据仓库或多于一个的组合。请注意优化器考虑这些参数以评估每一个在CBO生成的执行计划.
  
  在下面例子中提及的参数值是这样的(它已在Oracle8.1.7.4中一些联机事务处理运行结果良好),Oracle给你决定想维护何种设置的自由.因此不要仅保持默认值并且确信对于每个需求设置这些参数.
  
  6.1) OPTIMIZER_MODE
  
  此项决定优化器引擎运行在何种模式下。有效值:RULE, CHOOSE, ALL_ROWS, FIRST_ROWS (_n).已在第一部分3.2.2解释CBO选项.
  
  可将OPTIMIZER_MODE设置为CHOOSE.这种中间类型的选项在RBO和CBO之间,
  
  事实上,它试着在统计资料是否可用的情况下运行查询在CBO或RBO模式下。因此,如果出现在查询的表已生成统计资料,Oracle将优先采用CBO (ALL_ROWS only)
  
  例子: optimizer_mode = first_rows
  
  6.2) OPTIMIZER_FEATURES_ENABLE
  
  此项用来设置诸如8.1.5, 8.1.7, 9.0.0.的版本号。因为在每一个版本中CBO增加了新功能,它会改变并导致不同的执行计划。可以为你的程序调整设置版本号。请注意设置较低的版本将会防止以后版本新功能的使用。
  
  例子: optimizer_features_enable = 8.1.7
  
  6.3) OPTIMIZER_MAX_PERMUTATIONS
  
  此项参数指定查询连接的最大排列数量以选择一个执行计划,它会影响查询的解析时间,应该设置一个较低的值。确保本节提及的另一个参数的正常设置以致于优化器在指定的上限内查找到一个最佳的执行计划。Oracle8中默认值为80000,意味着没有限制。Oracle9中默认值为2000.
  
  例子: optimizer_max_permutations = 2000
  
  另一参数OPTIMIZER_SEARCH_LIMIT覆盖了本参数的效果,它指定一个查询中最大的表数量,可以考虑排序笛卡尔连接。在Oracle8.1.6中已废弃.

查看本文来源

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章