关系dbs的查询优化

关系dbs的查询优化

ID:27194239

大小:525.51 KB

页数:30页

时间:2018-12-01

关系dbs的查询优化_第1页
关系dbs的查询优化_第2页
关系dbs的查询优化_第3页
关系dbs的查询优化_第4页
关系dbs的查询优化_第5页
资源描述:

《关系dbs的查询优化》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、6.2关系DBS的查询优化第六章数据库管理系统6.1DBMS简介6.3关系DBMS的发展6.1DBMS简介1.DBMS位置DBMS是DBS的核心软件,介于用户和OS之间的系统软件,它实现对共享数据的有效组织、管理和各种操作。用户应用程序DBMSOSDBDBMS建立在OS之上,需要OS的支持。DBMS是用户操纵、管理DB的工具。说明:独立DBMS、OS扩充6.1DBMS简介DBMS的特点1.完备高效2.界面友好3.事务处理4.结构清晰5.规范开放DBMS的功能(1)数据定义(用DDL)(2)数据操纵(用DML)(3)数据组

2、织、存储和管理(4)数据库运行管理(5)数据库的建立和维护(6)数据通信接口6.1DBMS简介2.DBMS的组成(1)数据定义语言及其翻译处理程序(2)数据操纵语言及其编译(或解释)程序(3)数据库运行控制程序(4)实用程序3.DBMS运行环境(1)分布:数据分布、功能分布、处理分布。(2)开放:开放的硬件平台、支撑软件、网络支持、异质数据库互连、用户界面。系统缓冲区概念模式内模式DBMSOS外部记录存储记录数据库⑤应用程序A外模式②③④⑧⑦⑥①日志⑨应用程序A状态工作区⑩←6.1DBMS简介4.用户访问数据库的工作过程

3、①应用程序A向DBMS发出读一个记录的命令。程序给出记录类型名及欲读记录的码值。②DBMS分析命令,并调用A对应的子模式,检查A的存取权限,决定是否执行A的命令。③决定执行A的命令后,DBMS调用模式,根据子模式与模式变换的定义,确定所涉及的模式记录类型;通过模式与内模式的变换找到这些记录类型的内模式名。④DBMS调用内模式,确定所读入的物理记录。⑤DBMS向OS发读该物理记录的命令6.1DBMS简介⑥OS执行读命令并把数据从外存读到内存的系统缓冲区。⑦DBMS按模式、子模式定义,导出用户程序需要的记录形式,并送到应用程

4、序A的工作区。⑧DBMS向应用程序A送命令执行情况的状态信息。⑨记载日志DBMS把对数据库更新操作的全部情况都记载下来,以便数据库的恢复。⑩应用程序检查状态信息,若成功,对工作区中的数据正常处理;若失败,决定下一步如何执行。6.1DBMS简介6.2关系DBS的查询优化数据查询是DBS中最基本、最常用和最复杂的数据操作,查询优化是影响关系DBMS性能的关键因素。关系数据理论基于关系代数,同一个查询要求可以对应多个不同形式却相互等价的表达式。关系数据查询语言是非过程化的,由DBMS自动生成若干候选的查询计划并择优使用。查询语

5、句查询输出关系代数表达式执行计划语法分析与翻译执行引擎优化器数据有关数据的统计信息1.查询处理的过程6.2关系DBS的查询优化6.2关系DBS的查询优化查询处理包括三个基本步骤:解析和翻译优化实现(求值)解析和翻译解析:检查语法、验证关系翻译:将查询转化为内部形式,并进一步翻译为关系代数.实现执行引擎选取一个查询计划并执行,而后将结果返回给查询.6.3关系DBS的查询处理查询优化:在所有等价的执行计划中选取代价最低的那个。代价是利用从系统目录中获取的统计信息估算得到的。e.g.关系中的元组数目,元组的大小等.需要研究:如

6、何估量查询的代价实现关系代数操作的算法将单个操作算法结合起来形成一个对表达式的完整求值如何实现查询优化,即如何寻求一个具有最低代价的执行计划。6.3关系DBS的查询处理-代价度量代价通常是利用回答查询所需的时间来度量的。很多因素会影响查询时间:磁盘存取,CPU,网络连接等通常磁盘存取是最耗时的部分,并且容易估算,主要考虑.Numberofseeks*average-seek-costNumberofblocksread*average-block-read-costNumberofblockswritten*averag

7、e-block-write-cost写的代价大于读的代价:写以后需要回读以确保正确的写6.3关系DBS的查询处理-代价度量简化起见,仅使用numberofblock从磁盘传送块的数目作为代价的度量。代价依赖于内存缓冲区的大小更多内存降低磁盘存取次数可用内存数与OS其它进程相关,难以事先确定一般使用最坏估计,假设可用内存最小时的情况。是实际模型的简化忽略了顺序和随机读写的区别忽略了CPU的代价忽略了写到磁盘的代价。为什么要查询优化?例:Student表有l000个学生记录,每人平均选10门课程,SC表共有1000*10=l

8、0000个选课记录。(统计信息)。要求:查学生“王林”所选课程的成绩在85分以上的课程号。SELECTCnoFROMS,SCWHERES.Sno=SC.SnoANDSname=‘王林’ANDGrade>85;等价的关系代数表示:①∏Cno(σF1∧F2∧F3(S×SC))②∏Cno(σF2∧F3(S⋈SC))③∏Cn

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

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

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