Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2118891
  • 博文数量: 1647
  • 博客积分: 80000
  • 博客等级: 元帅
  • 技术积分: 9980
  • 用 户 组: 普通用户
  • 注册时间: 2008-10-13 15:15
文章分类

全部博文(1647)

文章存档

2011年(1)

2008年(1646)

我的朋友

分类:

2008-10-28 18:04:53


  3.2.3最低要求
  
  用CBO的最低要求是设置优化器模式为FRIST_ROWS或者ALL_ROWS(或CHOOSE)并为对象生成统计资料。然而,这并不能保证你的系统能工作到最佳状态。参照第二部分(初始化参数)涉及初始化参数的信息.
  
  不管是否设置优化器模式。如果有以下情况之一,CBO将会自动调用:
  
  1.用到提示.
  2.用到分区表.
  3.设置并行表
  
  3.2.4为什么要移去RBO?
  
   9i第二版将是最后一个正式支持CBO的版本。 推荐所有合作伙伴和客户验证使用CBO的应用程序,尽管RBO在Oracle10i(现在称Oracle10G)仍然可用,但不受支持。
  
  作为每一个已发布的Oracle笔记中,RBO的存在妨碍了Oralce对查询处理引擎的关键增强.它的移除将允许Oracle提高数据库引擎查询处理组件的性能和可靠性。
  
  目前,Oracle 对RBO的支持仅仅用以有限的错误修正并且Oracle对RBO没有添加新的功能.
  
  3.2.5 为什么移至CBO?
  
  CBO主要获益如下:
  
  1.以后Oracle停止RBO环境的开发.
  
  2.随后的Oracle数据库将移除RBO
  
  3.同CBO相比,RBO的访问方法是有限数量的.
  
  4.所有新功能基于CBO,这些大多数新功能对于设置等等是重要的。簇索引表,位图索引,基于函数的索引,反向索引,哈希连接,物化视图,索引表,和并行查询, 星型连接等
  
  5.媒介链接支持.
  
  6.一旦RBO不受支持,Oracle支持也不可用。
  
  7.CBO已经成熟
  
  先前Oracle7中,RBO在某些场景胜过CBO,甚至CBO并不是如想像中完好,并且经常选择糟糕的执行计划。以后的发行版本中,CBO功能获得了提升,现在对于新功能,它提供了对考虑收益的较好交互性
  
  8.分布式和远程查询更加可靠
  
  在RBO中,数据库链接,从本地到远程数据库多于一个表的查询调整相当困难.同样的工作,CBO胜过了RBO。本地优化器知道远程表的目前统计信息,并且对于执行计划能做出更好的决定.RBO可能考虑远程数据库的索引,但是CBO有权利统计远程数据库索引的信息并对查询计划做出决定.
【责编:admin】

--------------------next---------------------

阅读(122) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~