转至繁体中文版     | 网站首页 | 图文教程 | 资源下载 | 站长博客 | 图片素材 | 武汉seo | 武汉网站优化 | 
最新公告:     敏韬网|教学资源学习资料永久免费分享站!  [mintao  2008年9月2日]        
您现在的位置: 学习笔记 >> 图文教程 >> 数据库 >> ORACLE >> 正文
Oracle Optimizer:迁移到使用基于成本的优化器-----系列1.3         ★★★★

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

作者:闵涛 文章来源:闵涛的学习笔记 点击数:745 更新时间:2009/4/22 22:08:06

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

 

3.2.3     可用CBO模式

CBO有两种运行模式:ALL_ROWS和FIRST_ROWS.

FIRST_ROWS的目标是尽可能最快的返回行.这种模式告诉优化器响应时间是最重要的。它偏好嵌套连接方式. FIRST_ROWS也以考虑成本为主要规则来处理行.通常规则是使用索引的计划而不是使用全表扫描的计划作为访问路径,ORDER BY子句导致索引访问,等等

从9i版本起,在First提示中行的数量可以在参数中设置,FRIST_ROWS_N(N可以是1,10,100 或者1000),随不同应用程序的需求而设置

ALL_ROWS在返回输出结果以前,对给定的查询处理所有的行。它迫使优化器考虑最少的资源占用和最佳的吞吐量. ALL_ROWS更喜欢排序合并操作

对于一个OLTP系统, FIRST_ROWS对于快速响应时间是一个理想的选项.

对于批处理方向的应用程序意味着使用ALL_ROWS.注意,以最快响应时间的返回第N行的计划可能不是一个理想的计划,如果系统需求获得完整的结果.因此应根据应用程序的需要而决定.

当数据库大小变化时CBO动态调整它的执行路径,因此如果对于同一个应用程序同样的查询,一个数据库设置中运行很好而在另外的数据库中运行不良,你不必要理会.如果在两个数据库中设置和统计资料不同,这个将会发生..为了防止出现这种情况.得考虑使用优化器持久性.稍后章节将会提到.

 

3.2.3     CBO基初术语

当CBO分析语句时,下列术语将会频繁使用

 

Cost(成本)

在CBO中,成本的计算是涉及到每一个操作单位。逻辑上花费多少成本实际上并没有文档化或向外界公布,甚至随版本的不同而发生变化.

 

Cardinality(基数)

索引中单一行的数量和表中行的数量.查询基数是希望返回行的数量.

 

Selectivity(选择性)

  单一值的数量,被索引列的单一值视为选择性.举例来说,如果一个表有10000行,已创建的一个索引在一个列中有4000单一值,那么索引的可选择性为4000/10000*100=40%,在不为空的列上唯一索引的可选择性为100%.

 

Transitivity(传递性)

对于查询,CBO生成额外谓词的处理.它使优化器能考虑额外的执行路径。举例来说,如果在查询中提供了A=B AND B=C的谓词,优化器可能会添加额外的谓词来暗示A=C.

 

Statistics(统计资料)

对于各种不同的数据收集许多必须的信息以支持对象..对于CBO执行计划来说,它是至关重要的。

 

 

Join Methods(连接方法)

Oracle用诸如哈希,合并排序和嵌套连接进行连接.一个查询可能运行的更快相比较其它的其它方法。对于单个的查询应该评估连接方法。

 

FTS(全表扫描)

全表扫描涉及到查询,从第一块到最后分配的块扫描。对于大表是极其昂贵的,应该避免。

 

Index scan(索引扫描)

涉及到通过使用表上一个或更多的索引,一个表上的随机访问.


[系统软件]EXP-00008: ORACLE error 904 encountered的解决方…  [常用软件]PB7 连接 Oracle 的配置方法
[Web开发]oracle Export and Import 简介  [Web开发]ADO访问Oracle结果集的心得
[JAVA开发]JDBC+Hibernate将Blob数据写入Oracle  [JAVA开发]J2EE应用中与Oracle数据库的连接
[JAVA开发]Oracle Application Serve_  [其他]OracleOptimizer:迁移到使用基于成本的优化器----…
[其他]HP-UXrx2600B.11.22Uia64安装oracle9i9.2foria64手…  [其他]在RedhatEnterpriseserver3上安装oracle9iR2的注意…
教程录入:mintao    责任编辑:mintao 
  • 上一篇教程:

  • 下一篇教程:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
      注:本站部分文章源于互联网,版权归原作者所有!如有侵权,请原作者与本站联系,本站将立即删除! 本站文章除特别注明外均可转载,但需注明出处! [MinTao学以致用网]
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)

    同类栏目
    · Sql Server  · MySql
    · Access  · ORACLE
    · SyBase  · 其他
    更多内容
    热门推荐 更多内容
  • 没有教程
  • 赞助链接
    更多内容
    闵涛博文 更多关于武汉SEO的内容
    500 - 内部服务器错误。

    500 - 内部服务器错误。

    您查找的资源存在问题,因而无法显示。

    | 设为首页 |加入收藏 | 联系站长 | 友情链接 | 版权申明 | 广告服务
    MinTao学以致用网

    Copyright @ 2007-2012 敏韬网(敏而好学,文韬武略--MinTao.Net)(学习笔记) Inc All Rights Reserved.
    闵涛 投放广告、内容合作请Q我! E_mail:admin@mintao.net(欢迎提供学习资源)

    站长:MinTao ICP备案号:鄂ICP备11006601号-18

    闵涛站盟:医药大全-武穴网A打造BCD……
    咸宁网络警察报警平台