第九章 关系查询处理和查询优化.ppt
《第九章 关系查询处理和查询优化.ppt》由会员分享,可在线阅读,更多相关《第九章 关系查询处理和查询优化.ppt(49页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第九章关系查询处理和查询优化2学习目标学习目标掌握关系系统查询优化的步骤掌握关系系统查询优化的步骤掌握关系系统查询优化的一般准则掌握关系系统查询优化的一般准则34569.1.1 9.1.1 关系数据库系统的查询处理关系数据库系统的查询处理1.1.查询处理步骤查询处理步骤查询处理步骤查询处理步骤:(2)(2)查询检查查询检查根据数据字典对合法的查询语句进行语义检查根据数据字典对合法的查询语句进行语义检查 检查检查检查检查数据库对象数据库对象数据库对象数据库对象是否存在和是是否存在和是是否存在和是是否存在和是否有效;否有效;否有效;否有效;根据数据字典中的根据数据字典中的根据数据字典中的根据数据字
2、典中的用户权限用户权限用户权限用户权限和和和和完整性约束完整性约束完整性约束完整性约束定义对用户的定义对用户的定义对用户的定义对用户的存取存取存取存取权限权限权限权限进行检查;进行检查;进行检查;进行检查;检查后,把查询语句转换为关检查后,把查询语句转换为关检查后,把查询语句转换为关检查后,把查询语句转换为关系代数表达式(系代数表达式(系代数表达式(系代数表达式(查询树查询树查询树查询树)79.1.1 9.1.1 关系数据库系统的查询处理关系数据库系统的查询处理1.1.查询处理步骤查询处理步骤查询处理步骤查询处理步骤:(3)(3)查询优化查询优化就是从许多执行策略和操作算法中,选择一就是从许多
3、执行策略和操作算法中,选择一个高效率的查询处理策略。个高效率的查询处理策略。代数优化代数优化代数优化代数优化:是指关系代数表达式的优化是指关系代数表达式的优化 即改变关系代数表达式中操作的即改变关系代数表达式中操作的 次序和组合。次序和组合。物理优化物理优化物理优化物理优化:是指存取路径和底层操作算法的是指存取路径和底层操作算法的 选择选择89.1.1 9.1.1 关系数据库系统的查询处理关系数据库系统的查询处理1.1.查询处理步骤查询处理步骤查询处理步骤查询处理步骤:(4)(4)查询执行查询执行依据依据优化器优化器得到的执行策略生成查询计划;得到的执行策略生成查询计划;由由代码生成器代码生成
4、器生成执行这个查询计划的代码。生成执行这个查询计划的代码。99.1.2 9.1.2 实现查询操作的算法示例实现查询操作的算法示例1.1.选择操作的实现选择操作的实现选择操作的实现选择操作的实现:例例1:Select*fromstudentwhere几种情况:几种情况:无条件无条件Sno=0215121Sage20Sdept=CSandSage20109.1.2 9.1.2 实现查询操作的算法示例实现查询操作的算法示例1.1.选择操作的实现选择操作的实现选择操作的实现选择操作的实现:例例1:Select*fromstudentwhere(1)(1)简单的全表扫描方法简单的全表扫描方法n 方法:方
5、法:对查询的基表逐一、顺序检查,满足条件的输对查询的基表逐一、顺序检查,满足条件的输出。出。n 适用范围:适用范围:小表小表 119.1.2 9.1.2 实现查询操作的算法示例实现查询操作的算法示例1.1.选择操作的实现选择操作的实现选择操作的实现选择操作的实现:(2)(2)索引扫描方法索引扫描方法n 前提:前提:在选择条件的属性上有索引在选择条件的属性上有索引n 方法:方法:通过索引先找到满足条件的元组指针通过索引先找到满足条件的元组指针 通过指针在查询的基本表中找到元组通过指针在查询的基本表中找到元组例如:例如:Sno=0215121 Sage20例如:例如:Sdept=CSandSage
6、20有两种方法:有两种方法:索引的交集:索引的交集 :先找到满足一个条件的指针组,在基本:先找到满足一个条件的指针组,在基本表中找到相应的元组,并判断第二个条件。表中找到相应的元组,并判断第二个条件。129.1.2 9.1.2 实现查询操作的算法示例实现查询操作的算法示例2.2.连接操作的实现连接操作的实现连接操作的实现连接操作的实现:例例2:Select*FROMstudent,SCWHEREStudent.Sno=SC.Sno(1)(1)嵌套循环法嵌套循环法 提示提示提示提示:StudentStudentStudentStudent表扫描一遍表扫描一遍表扫描一遍表扫描一遍 SCSCSCSC
7、表扫描遍数与表扫描遍数与表扫描遍数与表扫描遍数与StudentStudentStudentStudent表的元组个数相同表的元组个数相同表的元组个数相同表的元组个数相同(2)(2)排序合并法排序合并法 提示:提示:提示:提示:StudentStudentStudentStudent和和和和SCSCSCSC表各扫描一遍表各扫描一遍表各扫描一遍表各扫描一遍(3)(3)索引连接方法索引连接方法(4)Hash Join(4)Hash Join方法方法13第第9 9章章 关系系统及其查询优化关系系统及其查询优化9.1关系数据库系统的查询处理关系数据库系统的查询处理9.2关系系统的查询优化关系系统的查询优
8、化9.3代数优化代数优化9.4物理优化物理优化149.2 9.2 关系系统的查询优化关系系统的查询优化 9.2.1查询优化概述查询优化概述9.2.2一个实例一个实例9.2.3一般优化准则一般优化准则159.2.1 9.2.1 查询优化概述查询优化概述 1.1.1.1.查询优化的必要性查询优化的必要性查询优化的必要性查询优化的必要性查询优化极大地影响查询优化极大地影响RDBMSRDBMS的性能。的性能。2.2.2.2.查询优化的可能性查询优化的可能性查询优化的可能性查询优化的可能性关关系系数数据据语语言言的的级级别别很很高高,使使DBMSDBMS可可以以从从关关系表达式中分析查询系表达式中分析查
9、询语义语义。n用用户户不不必必考考虑虑如如何何最最好好地地表表达达查查询询以以获获得得较较好好的效率的效率!163.3.3.3.系统优化的特点:系统优化的特点:系统优化的特点:系统优化的特点:系统系统可以比用户程序的优化可以比用户程序的优化做得更好做得更好(1)(1)优优化化器器从从数数据据字字典典中中获获取取许许多多统统计计信信息息,而而用用户户程程序序则难以获得这些信息则难以获得这些信息 。(2)(2)如如果果数数据据库库的的物物理理统统计计信信息息改改变变,系系统统自自动动对对查查询询重重新优化新优化以选择相适应的执行计划。以选择相适应的执行计划。在非关系系统中必须重写程序,在应用中不太
10、现实在非关系系统中必须重写程序,在应用中不太现实(3)(3)优优化化器器可可以以考考虑虑数数百百种种不不同同的的执执行行计计划划,而而程程序序员员一一般只能考虑有限的几种可能性。般只能考虑有限的几种可能性。(4)(4)优化器中包括了很多复杂的优化器中包括了很多复杂的优化技术优化技术。9.2.1 9.2.1 查询优化概述查询优化概述 174.4.4.4.查询优化的目标:查询优化的目标:查询优化的目标:查询优化的目标:选择有效策略,求得给定关系表达式的值。选择有效策略,求得给定关系表达式的值。5.5.5.5.实际系统查询优化的步骤实际系统查询优化的步骤实际系统查询优化的步骤实际系统查询优化的步骤9
11、.2.1 9.2.1 查询优化概述查询优化概述 189.2.1 9.2.1 查询优化概述查询优化概述 6.6.6.6.6.6.代价模型代价模型代价模型代价模型代价模型代价模型查询处理的代价可以通过该查询对各种资源的使用查询处理的代价可以通过该查询对各种资源的使用情况进行衡量。情况进行衡量。n资源包括:资源包括:磁盘存取(磁盘存取(I/0I/0)执行查询所用的执行查询所用的CPUCPU时间时间 并行并行/分布式数据库中通信的开销分布式数据库中通信的开销在集中式、大型数据库中,在集中式、大型数据库中,磁盘访问磁盘访问通常是主要的通常是主要的代价代价199.2.1 9.2.1 查询优化概述查询优化概
12、述 6.6.6.6.6.6.代价模型代价模型代价模型代价模型代价模型代价模型n集中式数据库集中式数据库单用户系统单用户系统单用户系统单用户系统:总代价总代价=I/O代价代价+CPU代价代价多用户系统多用户系统总代价总代价=I/O代价代价+CPU代价代价+内存代价内存代价n分布式数据库分布式数据库总代价总代价=I/O代价代价+CPU代价代价+内存代价内存代价+通信代价通信代价209.2.2 9.2.2 一个实例一个实例例:求选修了课程例:求选修了课程2 2号的学生姓名号的学生姓名SELECTStudent.SnameFROMStudent,SCWHEREStudent.Sno=SC.SnoAND
13、SC.Cno=2;219.2.2 9.2.2 一个实例一个实例例:求选修了课程例:求选修了课程2 2号的学生姓名号的学生姓名假设假设假设假设1.外存:外存:Student:1000Student:1000条条,SC:10000,SC:10000条条,选修选修2 2号课程号课程:50:50条条2.内存:内存:一个内存块装元组一个内存块装元组:10:10个个Student,Student,或或100100个个SC,SC,内存中一次可以存放内存中一次可以存放:5:5块块StudentStudent元组、元组、1 1块块SCSC元组和若干块连接结果元组元组和若干块连接结果元组3:读写速度:读写速度:2
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第九章 关系查询处理和查询优化 第九 关系 查询 处理 优化
限制150内