SQL语句的执行过程复习进程.ppt

SQL语句的执行过程复习进程.ppt

ID:59561073

大小:189.50 KB

页数:28页

时间:2020-11-11

SQL语句的执行过程复习进程.ppt_第1页
SQL语句的执行过程复习进程.ppt_第2页
SQL语句的执行过程复习进程.ppt_第3页
SQL语句的执行过程复习进程.ppt_第4页
SQL语句的执行过程复习进程.ppt_第5页
资源描述:

《SQL语句的执行过程复习进程.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、SQL语句的执行过程拓明科技Oracle数据库内部培训资料DDL(数据定义语言)DML(数据操纵语言)SQL语句的类型拓明科技Oracle数据库内部培训资料修改Oracle数据字典所执行的语句。它们是创建表、增加用户、删除表中的列、创建触发器等的语句例如:CREATETABLE、CREATEUSER、CREATEPACKAGE、ALTERTABLE、CREATEPROCEDUREDDL(数据定义语言)拓明科技Oracle数据库内部培训资料访问和修改数据库中数据所执行的语句。这些语句包括SELECT、INSERT、MERGE、UPDATE和DELETE命令DML(数据操纵语言)拓明科技O

2、racle数据库内部培训资料Oracle执行一条语句从开始到结束经过4个步骤:分析对提交的语句进行语法和语义检查优化生成一个可在数据库中用来执行语句的最佳计划行资源生成为会话取得最佳计划和建立执行计划语句执行完成实际执行查询的行资源生成步骤的输出语句执行过程拓明科技Oracle数据库内部培训资料语法分析查询是不是合法的语句语义分析如果是合法的语句,还需要检查是否具有访问权限、访问的列是否在所访问的表中、是否存在歧义共享池检查如果是DML语句还需要进行共享池检查,此语句是否已经被其他用户分析过且Oracle可重用已经执行的工作,如果是就进行软分析,如果不是就进行硬分析。DDL总是硬分析,

3、从不重用分析拓明科技Oracle数据库内部培训资料共享池概念是Oracle体系结构的一个关键成分。共享池是Oracle共享全局区(SGA)中的一块内存,其中库高速缓存区存放以前执行过的SQL语句、PL/SQL代码,数据字典高速缓存区存放字典信息硬分析软分析共享池检查拓明科技Oracle数据库内部培训资料分析查询检查语法验证语义计算散列值找到一个匹配验证存在一个与我们的查询完全相同的查询(引用相同的对象)确认我们具有访问所有引用对象的必须的权限验证语句在相同的环境中执行如果是软分析就直接跳过下面的优化和行资源生成这一重要步骤硬分析和软分析拓明科技Oracle数据库内部培训资料所有DML语

4、句第一次提交给Oracle时,在它们的生存期中至少要优化一次。优化发生在硬分析中。语句义上和语法上完全相同,且执行环境也相同的语句的执行可以利用以前硬分析的工作。在此情形下,对它们进行软分析。硬分析包括查询优化步骤。这是一种费劲的、CPU密集型的处理过程,所花的时间可能比语句的实际执行时间还要长。查询优化工作是要找到可能是最好的执行计划优化和行资源生成拓明科技Oracle数据库内部培训资料基于规则的优化程序(RBO)这种优化程序基于一组规则建立查询计划。它不考虑对象尺寸、列的基数、数据的分布、排序区尺寸以及其它因素。查询优化只能利用已经编好的规则。基于成本的优化程序(CBO)这种优化程

5、序根据收集的实际访问数据的统计信息对查询进行优化。在确定最合适的计划是,它将使用行数、数据集的尺寸以及许多其他信息。CBO将生成许多(或许数千)可能的查询计划(解决查询的预备途径),并给每个查询计划赋予一个数值成本。采用具有最低成本的查询计划优化程序模式拓明科技Oracle数据库内部培训资料优化之后就是行资源生成,行资源生成器是Oracle中的一个软件,它接受优化程序的输出,将它格式化为实际的执行计划。例如:在使用SQL*PLUS中的AUTOTRACE实用程序时,它打印查询计划行资源生成拓明科技Oracle数据库内部培训资料语句执行的最后步骤是利用资源生成器的输出实际执行语句。它是DM

6、L执行中唯一的强制性的步骤。可以跳过分析、优化和行资源生成步骤。反复执行语句。因为这是目前为止最高效的方法,只要有可能,我们都希望建立符合“分析一次,执行许多次”规则的应用程序。执行拓明科技Oracle数据库内部培训资料OVERALLTOTALSFORALLNON-RECURSIVESTATEMENTScallcountcpuelapseddiskquerycurrentrows-----------------------------------------------------------------------Parse120.040.120200Execute120.020.

7、0402682923Fetch48560.860.8107703072673-----------------------------------------------------------------------total48800.930.98079732972696count:提供OCI过程的执行次数CPU:提供执行CPU所花的时间单位是秒Elapsed:提供了执行时所花的时间。单位是秒。这个参数值等于用户响应时间Disk:提供缓存区

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

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

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