关系查询和查询优化讲稿.ppt
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《关系查询和查询优化讲稿.ppt》由会员分享,可在线阅读,更多相关《关系查询和查询优化讲稿.ppt(24页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、关系查询和查询优化第一页,讲稿共二十四页哦9.1关系数据库系统的查询处理关系数据库系统的查询处理v查询分析查询分析v查询检查查询检查v查询优化查询优化v查询执行查询执行词法分析词法分析语法分析语法分析语义转换语义转换符号名转换符号名转换安全性检查安全性检查完整性检查完整性检查查询树查询树代数优化代数优化物理优化等物理优化等执行策略描述执行策略描述代码生成代码生成执行查询计划的代码执行查询计划的代码数据库数据库数据字典数据字典查询语句查询语句查询分析查询分析查询检查查询检查查询优化查询优化查询执行查询执行图图9.1查询处理步骤查询处理步骤9.1.1查询处理的步骤查询处理的步骤第二页,讲稿共二十四
2、页哦9.1.2实现查询操作的算法示例实现查询操作的算法示例一、选择操作的实现一、选择操作的实现例例1SELECT*FROMstudentWHEREC1:无条件;:无条件;C2:Sno=200215121;C3:Sage20;C4:Sdept=CSANDSage20方法方法:1.1.简单的全表扫描简单的全表扫描2.2.索引或散列扫描索引或散列扫描二、连接操作的实现二、连接操作的实现例例2SELECT*FROMstudent,SCWHEREstudent.Sno=SC.Sno方法:方法:1.1.嵌套循环方法嵌套循环方法2.2.排序合并方法排序合并方法3.3.索引连接方法索引连接方法4.Hash J
3、oin4.Hash Join方法方法第三页,讲稿共二十四页哦9.2关系数据库系统的查询优化关系数据库系统的查询优化9.2.1查询优化概述查询优化概述v查询优化的必要性查询优化的必要性查询优化极大地影响查询优化极大地影响RDBMS的性能。的性能。v查询优化的可能性查询优化的可能性关系数据语言的关系数据语言的级别很高级别很高,使,使DBMS可以从关系表达式中分析查询可以从关系表达式中分析查询语义语义。第四页,讲稿共二十四页哦由由DBMS进行查询优化的好处进行查询优化的好处用户不必考虑如何最好地表达查询以获得较好的效率,系统可以比用用户不必考虑如何最好地表达查询以获得较好的效率,系统可以比用户程序的
4、户程序的优化优化做得更好。做得更好。1.优化器可以从数据字典中获取许多统计信息,而用户程序则难以获得这些信优化器可以从数据字典中获取许多统计信息,而用户程序则难以获得这些信息息。2.如果数据库的物理统计信息改变了,系统可以自动对查询如果数据库的物理统计信息改变了,系统可以自动对查询重新优化重新优化以选择相适应以选择相适应的执行计划。在非关系系统中必须重写程序,而重写程序在实际应用中往往的执行计划。在非关系系统中必须重写程序,而重写程序在实际应用中往往是不太可能的。是不太可能的。3.优化器可以考虑数百种不同的执行计划,而程序员一般只能考虑有限的几种优化器可以考虑数百种不同的执行计划,而程序员一般
5、只能考虑有限的几种可能性。可能性。4.优化器中包括了很多复杂的优化技术。这些技术往往只有最好的程序员才能优化器中包括了很多复杂的优化技术。这些技术往往只有最好的程序员才能掌握。系统的自动优化相当于使的所有人都拥有这些优化技术。掌握。系统的自动优化相当于使的所有人都拥有这些优化技术。第五页,讲稿共二十四页哦查询优化目标查询优化目标v查询优化的总目标查询优化的总目标选择有效策略,求得给定关系表达式的值选择有效策略,求得给定关系表达式的值v实际系统的查询优化步骤实际系统的查询优化步骤1.将查询转换成某种内部表示,通常是语法树将查询转换成某种内部表示,通常是语法树2.根据一定的等价变换规则把语法树转换
6、成标准根据一定的等价变换规则把语法树转换成标准(优化)形式(优化)形式3.选择低层的操作算法选择低层的操作算法对于语法树中的每一个操作对于语法树中的每一个操作计算各种执行算法的执行代价计算各种执行算法的执行代价选择代价小的执行算法选择代价小的执行算法4.生成查询计划生成查询计划(查询执行方案查询执行方案)查询计划是由一系列内部操作组成的。查询计划是由一系列内部操作组成的。第六页,讲稿共二十四页哦基于代价模型的优化算法基于代价模型的优化算法v集中式数据库集中式数据库单用户系统单用户系统总代价总代价=I/O代价代价+CPU代价代价多用户系统多用户系统总代价总代价=I/O代价代价+CPU代价代价+内
7、存代价内存代价v分布式数据库分布式数据库总代价总代价=I/O代价代价+CPU代价代价+内存代价内存代价+通信代价通信代价代价模型代价模型第七页,讲稿共二十四页哦9.2.2一个实例一个实例例例3求选修了课程求选修了课程2的学生姓名的学生姓名SELECTStudent.SnameFROMStudent,SCWHEREStudent.Sno=SC.SnoANDSC.Cno=2;执行策略执行策略1name(Student.Sno=SC.SnoSC.Cno=2(StudentSC)2name(SC.Cno=2(StudentSC)3name(StudentSC.Cno=2(SC)第八页,讲稿共二十四页哦
8、9.3代数优化代数优化v基于关系代数等价变换规则的优化方法为基于关系代数等价变换规则的优化方法为代数优化;代数优化;v代代数数优优化化策策略略是是通通过过对对关关系系代代数数表表达达式式的的等等价价变变换换来来提提高查询效率;高查询效率;v关关系系代代数数表表达达式式的的等等价价是是指指用用相相同同的的关关系系代代替替两两个个表表达达式中相应的关系所得到的结果是相同的;式中相应的关系所得到的结果是相同的;v两个表达式两个表达式E1和和E2是等价的是等价的,记为记为E1E2。第九页,讲稿共二十四页哦9.3.1关系代数表达式等价变换规则关系代数表达式等价变换规则设设E1、E2等是关系代数表达式,等
9、是关系代数表达式,F是条件表达式是条件表达式l.连接、笛卡尔积交换律连接、笛卡尔积交换律E1E2E2E1E1E2E2E1E1FE2E2FE1常用的等价变换规则常用的等价变换规则第十页,讲稿共二十四页哦2.连接、笛卡尔积的结合律连接、笛卡尔积的结合律(E1E2)E3E1(E2E3)(E1E2)E3E1(E2E3)(E1E2)E3E1(E2E3)FFFF第十一页,讲稿共二十四页哦3.投影的串接定律投影的串接定律A1,A2,An(B1,B2,Bm(E)A1,A2,An(E)假设:假设:1)E是关系代数表达式是关系代数表达式2)Ai(i=1,2,n),Bj(j=l,2,m)是属性名是属性名3)A1,A
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 关系 查询 优化 讲稿
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内