网站首页
JSP空间
动态资讯
开源项目
技术文档
资源下载
J2EE资源
客户论坛
在线支付
 
  技术文档>>数据库技术>>Oracle技术>>Oracle开发>查看文档  
  使用新的optimizer hints控制优化行为 (1)     
  文章作者:未知  文章来源:赛迪网技术社区  
  查看:67次  录入:管理员--2008-03-05  
 

在oracle 10g中:我们可以使用更多新的optimizer hints来控制优化行为。现在让我们快速的了解一下这些强大的新hints:

spread_min_analysis

使用这一hint,你可以忽略一些关于如详细的关系依赖图分析等电子表格的编译时间优化规则。其他的一些优化,如创建过滤以有选择性的定位电子表格访问结构并限制修订规则等,得到了继续使用。

由于在规则数非常大的情况下,电子表格分析会很长。这一提示可以帮助我们减少由此产生的数以百小时计的编译时间。

例:

select /*+ spread_min_analysis */ ...

spread_no_analysis

通过这一hint,可以使无电子表格分析成为可能。同样,使用这一hint可以忽略修订规则和过滤产生。如果存在一电子表格分析,编译时间可以被减少到最低程度。

例:

select /*+ spread_no_analysis */ ...

use_nl_with_index

这项hint使cbo通过嵌套循环把特定的表格加入到另一原始行。只有在以下情况中,它才使用特定表格作为内部表格:如果没有指定标签,cbo必须可以使用一些标签,且这些标签至少有一个作为索引键值加入判断;反之,cbo必须能够使用至少有一个作为索引键值加入判断的标签。

例:

select /*+ use_nl_with_index (polrecpolrind) */ ...

cardinality

此hint定义了对由查询或查询部分返回的基数的评价。注意如果没有定义表格,基数是由整个查询所返回的总行数。

例:

select /*+ cardinality ( [tablespec] card ) */

selectivity

此hint定义了对查询或查询部分选择性的评价。如果只定义了一个表格,选择性是在所定义表格里满足所有单一表格判断的行部分。如果定义了一系列表格,选择性是指在合并以任何顺序满足所有可用判断的全部表格后,所得结果中的行部分。

例:

select /*+ selectivity ( [tablespec] sel ) */

然而,注意如果hints cardinality 和 selectivity都定义在同样的一批表格,二者都会被忽略。

no_use_nl

hint no_use_nl使cbo执行循环嵌套,通过把指定表格作为内部表格,把每个指定表格连接到另一原始行。通过这一hint,只有hash join和sort-merge joins会为指定表格所考虑。

例:

select /*+ no_use_nl ( employees ) */ ...

no_use_merge

此hint使cbo通过把指定表格作为内部表格的方式,拒绝sort-merge把每个指定表格加入到另一原始行。

例:

select /*+ no_use_merge ( employees dept ) */ ...

no_use_hash

此hint使cbo通过把指定表格作为内部表格的方式,拒绝hash joins把每个指定表格加入到另一原始行。

例:

select /*+ no_use_hash ( employees dept ) */ ...

no_index_ffs

此hint使cbo拒绝对指定表格的指定标签进行fast full-index scan。

syntax: /*+ no_index_ffs ( tablespecindexspec ) */

 
 
上一篇: 去掉数据库的初始化参数即可禁用xdb服务    下一篇: 实例讲解如何实现某种类型的分页功能
  相关文档
轻松掌握"lag"与"lead"分析函?的用法 02-29
oracle数据库中如何对时间格式进行处理 03-19
讲解v$datafile_header相关字段的使用 03-10
如何将oralce数据库中孤独临时段清除 04-16
教你轻松掌握如何用toad或oem管理job 02-28
教你快速掌握oracle中"kill"进程的方法 (1) 01-31
用quick slice获取oracle进程的线程状态 07-07
带你轻松接触使用特殊索引时的注意事项 09-01
快速掌握删除oracle 10g垃圾表的好方法 11-22
当数据积累到一定时间后执行会越来越慢 07-25
巧用数据库归档技术解决性能下降问题 04-14
教你在Oracle中实现SELECT TOP N的方法 06-03
Oracle的恢复管理器及DBMS_JOB包分析 04-11
融会贯通oracle数据库的25条基本知识 02-29
初学者必读:oracle监听口令及监听器安全 07-16
在oracle中添加用户 赋权 修改密码 解锁 05-29
不要忽视Oracle 10g STATSPACK新功能 06-03
丢失归档日志文件后数据库应当如何恢复 (1) 04-16
讲解oracle show parameter命令的小技巧 07-30
Oracle Online Redo LogFile 09-29
返回首页 | 关于我们 | J网章程 | JSP空间合租 | 客服中心 | 免责声明 | 常见问题 | 参观机房
本站主机空间代理至厦门市华众网络科技有限公司
《中华人民共和国增值电信业务经营许可证》
编号:闽B2-20050079
@2005-2008福建JSP技术网 版权所有 闽ICP备05000928号
厦门(总部):13616026886 福州:0591-87655121
邮箱:admin@fjjsp.com 站长QQ,点击这里给我发消息