Oracle数据库优化培训.ppt

Oracle数据库优化培训.ppt

ID:50610142

大小:242.00 KB

页数:36页

时间:2020-03-12

Oracle数据库优化培训.ppt_第1页
Oracle数据库优化培训.ppt_第2页
Oracle数据库优化培训.ppt_第3页
Oracle数据库优化培训.ppt_第4页
Oracle数据库优化培训.ppt_第5页
资源描述:

《Oracle数据库优化培训.ppt》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、ORACLE数据库 SQL优化培训软件一部2008年9月培训内容主要介绍与SQL调整有关的内容,内容涉及多个方面:1.SQL语句执行的过程2.ORACLE优化器3.表之间的关联4.如何得到SQL执行计划5.如何分析执行计划等内容背景知识在调整之前我们需要了解一些背景知识,只有知道这些背景知识,我们才能更好的调整sql语句SQL语句处理的基本过程,主要包括:◆查询语句处理◆DML语句处理(insert,update,delete)◆DDL语句处理(create..,drop..,alter..,)◆事务控制

2、(commit,rollback)优化原理作为关系数据库管理系统,要解决的一个重要问题就是如何提高查询的效率,即所谓的查询优化。为什么会出现这个问题呢?我们知道SQL语言是一种非过程化的语言,即它只要用户指出“做什么”,而不需指出“如何做”,这样对用户来说确实方便了,但系统的负担就重了。系统要完成“如何做”,就必然有个选择、比较、权衡的过程,即如何选择最佳的存取途径和实现算法。什么是优化器查询优化对提高查询效率是至关重要的,在任何一个商品化的RDBMS中,都必须有一个专门负责查询语句优化的程序,称为优化器

3、;是SQL之前分析语句的工具。优化器的优化方式:基于规则(RBO):优化器遵循Oracle内部预定的规则基于代价(CBO):依据语句执行的代价,主要指对CPU和内存的占用。优化器在判断是否使用CBO时,要参照表和索引的统计信息。统计信息要在对表做analyze后才会有。优化器的优化模式Oracle优化器的优化模式主要有四种:Rule:基于规则;Choose:默认模式。根据表或索引的统计信息,如果有统计信息,则使用CBO方式;如果没有统计信息,相应列有索引,则使用RBO方式。Firstrows:与Choos

4、e类似。不同的是如果表有统计信息,它将以最快的方式返回查询的前几行,以获得最佳响应时间。Allrows:即完全基于Cost的模式。当一个表有统计信息时,以最快方式返回表所有行,以获得最大吞吐量。没有统计信息则使用RBO方式。优化模式的选择指定优化模式(CBO/RBO)优化模式为默认选择模式(Choose)情况下,怎么样才能知道SQL是基于代价(CBO)查询,还是基于规则(RBO)查询。COST无值说明使用基于规则(RBO)模式COST有值说明使用基于代价(CBO)模式COST说明什么COST是什么?cos

5、t属性的值是一个在oracle内部用来比较各个执行计划所耗费(IOCPU)的代价的值,从而使优化器可以选择最好的执行计划。不同语句的cost值不具有可比性,只能对同一个语句的不同执行计划的cost值进行比较,越小越好。程序员的要求ORACLE系统中的优化器做的比较简单,因此这就要求用户要有较强的优化意识。程序员要想获得较优的查询性能,就必须对表的大小、索引的选择率以及更新和存取操作的频度等统计信息了如指掌。ORACLE优化对程序员的要求:优化原理优化通常有两方面的内容,即逻辑优化和物理优化。逻辑优化包括

6、:选择运算尽早执行投影与选择运算同时进行,以避免重复扫描文件公共子表达式预处理谓词的简化处理表达式的恒等变换等逻辑优化往往是一种等价变换,它的优化会对查询带来绝对好处,这部分优化与用户无关,完全由优化器负责,故我们不关心这部分优化。优化原理物理优化包括:选择有效的存取路径选择合适的操作序列提供较优的操作实现方法物理优化则往往是对动态情况的一种权衡。物理优化目前采用的方法有:启发式的、基于统计信息的。智能式的ORACLE的优化器是启发式的,它的核心是一些从经验中得到的准则,它的好处是系统代价小,但不利的方面

7、是用户的负担太重。什么是索引索引使用索引可快速访问数据库表中的特定信息。索引是对数据库表中一列或多列的值进行排序的一种结构,提供指向存储在表的指定列中的数据值的指针,然后根据指定的排序顺序对这些指针排序。索引列可以基于数据库表中的单列或多列创建索引。多列索引可以区分其中一列可能有相同值的行。索引类型A)唯一索引唯一索引是不允许其中任何两行具有相同索引值的索引。B)主键索引在数据库中为表定义主键将自动创建主键索引,主键索引是唯一索引的特定类型。该索引要求主键中的每个值都唯一。C)聚散索引在聚集索引中,表中行

8、的物理顺序与键值的逻辑(索引)顺序相同。一个表只能包含一个聚集索引。与非聚集索引相比,聚集索引通常提供更快的数据访问速度。查询优化实例及分析优化准则使用ROWID的查询效率最高;使用唯一索引的查询要快于使用非唯一索引的查询;使用完整说明索引的查询快于使用部分说明索引的查询;等条件的查询快于范围条件或不等条件的查询;ISNULL条件的查询不能使用索引;尽量避免查询中出现全表扫描。单表查询的优化ORACLE中实现单表查询的途径有三

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。