Oracle性能优化05 - Hints

adt126

贡献于2014-01-21

字数:0 关键词: Oracle 数据库服务器

DATAGURU专业数据分析网站 2012.11.15 性能优化 第五课--Hints 2DATAGURU专业数据分析网站 2012.11.12 法律声明 【声明】本视频和幻灯片为炼数成金网络课程的教 学资料,所有资料只能在课程内使用,不得在课 程以外范围散播,违者将可能被追究法律和经济 责任。 课程详情访问炼数成金培训网站 http://edu.dataguru.cn 2012- 12-15 DATAGURU专业数据分析网站 2012.11.15 什么是Oracle的Hints Hints是用来约束型优化器行为的一种技术 – 优化器模式 • all_rows • first_rows – 数据访问路径 • 基于表的数据访问 • 基于索引的数据访问 – 表关联的方式 • NL •MJ •HJ ... 2012- 12-15 DATAGURU专业数据分析网站 2012.11.15 Hints的使用范畴 � 尽量避免在开发中使用 � 辅助DBA用来做性能排查和优化 2012- 12-15 DATAGURU专业数据分析网站 2012.11.15 Oracle hints 2012- 12-15 DATAGURU专业数据分析网站 2012.11.15 Oracle hints 2012- 12-15 DATAGURU专业数据分析网站 2012.11.15 访问路径相关的Hints � /* full */ 全表扫描 2012- 12-15 DATAGURU专业数据分析网站 2012.11.15 � /* full */ 全表扫描 访问路径相关的Hints index方式执行计划 表扫描方式执行计划 2012- 12-15 DATAGURU专业数据分析网站 2012.11.15 访问路径相关的Hints � INDEX 和 NO_INDEX 2012- 12-15 DATAGURU专业数据分析网站 2012.11.15 访问路径相关的Hints � INDEX_FFS 全表扫描 FFS扫描 2012- 12-15 DATAGURU专业数据分析网站 2012.11.15 访问路径相关的Hints � INDEX_FFS index range scan index fast scan 2012- 12-15 DATAGURU专业数据分析网站 2012.11.15 访问路径相关的Hints � /*+ index_ss */ index skip scan – 用于替代全表扫描的一种数据访问方法。 – 对于前导重复率高的联合索引,有时候index skip scan的性能要好一些。 2012- 12-15 DATAGURU专业数据分析网站 2012.11.15 访问路径相关的Hints index skip scan 全表扫描 2012- 12-15 DATAGURU专业数据分析网站 2012.11.15 表关联的Hints --NL � /*+ use_nl */ Nested Loop Joins 2012- 12-15 DATAGURU专业数据分析网站 2012.11.15 表关联的Hints --NL � NL的场景 – 关联中有一个表比较小 – 被关联表的关联字段上有索引 – 索引的键值不应该重复率很高 2012- 12-15 DATAGURU专业数据分析网站 2012.11.15 表关联的Hints --HJ � /*+ use_hash */ hash join 2012- 12-15 DATAGURU专业数据分析网站 2012.11.15 表关联的Hints --HJ � Hash join 的原理 两个结果集 两个结果集 的Hash连接 2012- 12-15 DATAGURU专业数据分析网站 2012.11.15 表关联的Hints --HJ � Hash join的应用场景 – 一个大表,一个小表的关联 – 表上没有索引 – 返回结果集比较大 2012- 12-15 DATAGURU专业数据分析网站 2012.11.15 表关联的Hints --Merge join /*+ use_merge */ 2012- 12-15 DATAGURU专业数据分析网站 2012.11.15 表关联的Hints --Merge join �将两个结果集分别排序 �对排序后的结果集进行连接 2012- 12-15 DATAGURU专业数据分析网站 2012.11.15 表关联的Hints --Merge join � 应用场景 � 当结果集已经排过序操作。 2012- 12-15 DATAGURU专业数据分析网站 2012.11.15 表关联的Hints --leading � /*+ leading() */ 规定表连接的顺序 2012- 12-15 DATAGURU专业数据分析网站 2012.11.15 其它的Hints � /*+ append */ – 以直接加载的方式插入数据 传统加载 直接加载 2012- 12-15 DATAGURU专业数据分析网站 2012.11.15 其它的Hints �/*+ append */ 2012- 12-15 DATAGURU专业数据分析网站 2012.11.15 其它的Hints � /*+ append */ 传统加载 直接加载 2012- 12-15 DATAGURU专业数据分析网站 2012.11.15 其它的Hints � /*+ dynamic sampling */ – 设置动态采样的级别 2012- 12-15 DATAGURU专业数据分析网站 2012.11.15 其它的Hints � /+* PARALLEL */ – 指定并行度 2012- 12-15 DATAGURU专业数据分析网站 2012.11.15 � /*+ DRIVING_SITE() */ – 决定一个分布式事物中,操作在哪个节点上完成。 � 如果没有hint,远程表(departments)上的数据将被传到本地来做关联。 � 使用hint,本地的数据将传到远程节点上执行,最后将结果返回本地。 其它的Hints 2012- 12-15 DATAGURU专业数据分析网站 2012.11.15 � /*+ cardinality() */ – 模拟一个结果集的cardinality 30DATAGURU专业数据分析网站 2012.11.12 炼数成金逆向收费式网络课程 � Dataguru(炼数成金)是专业数据分析网站,提供教育,媒体,内容,社区,出版, 数据分析业务等服务。我们的课程采用新兴的互联网教育形式,独创地发展了逆向收 费式网络培训课程模式。既继承传统教育重学习氛围,重竞争压力的特点,同时又发 挥互联网的威力打破时空限制,把天南地北志同道合的朋友组织在一起交流学习,使 到原先孤立的学习个体组合成有组织的探索力量。并且把原先动辄成千上万的学习成 本,直线下降至百元范围,造福大众。我们的目标是:低成本传播高价值知识,构架 中国第一的网上知识流转阵地。 � 关于逆向收费式网络的详情,请看我们的培训网站 http://edu.dataguru.cn DATAGURU专业数据分析网站 Thanks FAQ时间

下载文档,方便阅读与编辑

文档的实际排版效果,会与网站的显示效果略有不同!!

需要 3 金币 [ 分享文档获得金币 ] 2 人已下载

下载文档

相关文档