




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
*数据库原理1关系系统及其查询优化第4章
关系系统
关系系统的定义关系系统的分类
关系系统的查询优化关系系统及其查询优化查询优化的一般准则关系代数等价变换规则关系代数表达式的优化算法优化的一般步骤*数据库原理24.1关系系统支持关系模型的关系数据库管理系统简称关系系统。下述关系的DBMS不能称为关系系统不支持关系数据结构的系统支持关系数据结构,但无δ、π、运算功能的系统支持关系数据结构,有δ、π、运算,但要求定义物理存取路径的系统可称为关系系统的DBMS,当且仅当1)支持关系数据结构(关系数据库)2)支持δ、π、运算,且不要求用户定义任何物理存取路径4.1.1关系系统的定义*数据库原理34.1.2关系系统的分类4.全关系系统:
支持关系模型的所有特征。在关系完备系统的基础上,进一步支持实体完整性和参照完整性等。DBⅡ,ORACLE,SYBASE,…已接近这个目标。目前尚无全关系系统。1.表式系统:仅支持关系数据结构,不支持集合级的操作。(不能算关系系统)2.(最小)关系系统:
支持关系数据结构,支持δ、π、运算,且不定义物理路径。3.关系完备系统:
支持关系数据结构和所有关系代数操作(或功能上与关系代数等价)。DBⅡ,ORACLE,SYBASE,…属于这一类。*数据库原理4关系系统分类数据结构数据操作完整性约束表式系统表××(最小)关系系统表选择、投影、连接×关系完备的系统表√×全关系系统√√√*数据库原理54.2关系数据库系统的查询优化4.2.1关系系统及其查询优化查询处理的过程查询语句查询输出关系代数表达式执行计划语法分析与翻译执行引擎优化器有关数据的统计信息数据*数据库原理64.2关系数据库系统的查询优化4.2.1关系系统及其查询优化查询处理的过程查询语句查询输出关系代数表达式执行计划语法分析与翻译执行引擎优化器有关数据的统计信息数据*数据库原理7系统优化优化器可以从数据字典中获取许多统计信息,从而选择有效的执行计划;如果数据库的物理统计信息改变了,系统可以自动对查询进行重新优化以选择相适应的执行计划;优化器可以考虑数百种不同的执行计划;优化器中包括了很多复杂的优化技术。*数据库原理8实际系统的查询优化步骤1.将查询转换成某种内部表示,通常是语法树2.根据一定的等价变换规则把语法树转换成标准(优化)形式3.选择低层的操作算法对于语法树中的每一个操作根据存取路径、数据的尺寸、数据的存储分布、存储数据的聚簇等信息来计算各种执行算法的执行代价选择代价小的执行算法4.生成查询计划(查询执行方案)*数据库原理9
常用查询优化技术用启发式规则来缩减查询计划的搜索空间利用统计信息估算执行代价基于代价(目前商品化RDBMS大都采用)代价模型
集中式数据库单用户系统:总代价=I/O代价+CPU代价多用户系统:总代价=I/O代价+CPU代价+内存代价分布式数据库 总代价=I/O代价+CPU代价[+内存代价]+通信代价*数据库原理104.2.2一个实例例.求选2号课程的学生姓名SELECTStudent.SnameFROM Student,SCWHEREStudent.Sno=SC.SnoANDCno=‘2’;数据量:Student:1000条;SC:10000条;选修2号课程:50条一个内存块装元组:10个Student或100个SC,内存中可以存放:5块Student元组和1块SC元组读写速度:20块/秒假设:*数据库原理111.Q1=ПSname(бStudent.Sno=SC.Sno∧SC.Cno=‘c2‘
(Student×SC))
①计算广义笛卡尔积(Student×SC)
读取总块数=读Student表块数+读SC表遍数*每遍块数
=1000/10+(1000/(10×5))×(10000/100)=2100
读数据时间=2100/20=105秒 中间结果大小=1000*10000=107(1千万条元组)
写中间结果时间=10000000/10/20=50000秒
②选择操作(б) 读数据时间=50000秒
③投影(П)总时间=105+50000+50000秒=100105秒=27.8小时*数据库原理121.Q1=ПSname(бStudent.Sno=SC.Sno∧SC.Cno=‘c2‘
(Student×SC))
①计算广义笛卡尔积(Student×SC)
读取总块数=读Student表块数+读SC表遍数*每遍块数
=1000/10+(1000/(10×5))×(10000/100)=2100
读数据时间=2100/20=105秒 中间结果大小=1000*10000=107(1千万条元组)
写中间结果时间=10000000/10/20=50000秒
②选择操作(б) 读数据时间=50000秒
③投影(П)总时间=105+50000+50000秒=100105秒=27.8小时*数据库原理132.Q2=ПSname(бSC.Cno='2'(StudentSC))①自然连接()
读取总块数=2100块 读数据时间=2100/20=105秒 中间结果大小=10000(即SC表中记录条数,减少1000倍) 写中间结果时间=10000/10/20=50秒
②选择操作(б)
读数据时间=50秒
③投影(П)
总时间=105+50+50秒=205秒=3.4分
*数据库原理143.Q2=ПSname(StudentбSC.Cno='2'(SC))
①选择操作(б)
读SC表总块数=10000/100=100块 读数据时间=100/20=5秒
中间结果大小=50条(不必使用中间文件)
②自然连接() 读Student表总块数=1000/10=100块 读数据时间=100/20=5秒
③投影(П)
总时间=5+5秒=10秒
*数据库原理154.2.3查询优化的一般准则选择运算应尽可能先做
在执行连接操作前对关系适当进行预处理(索引连接方法和排序合并连接方法)投影运算和选择运算同时做将投影运算与其前后的双目运算结合(连接、并、差、交等)选择运算和笛卡尔积运算结合(等值连接比笛卡儿积省时间)提取公共子表达式(例如,定义视图的表达式)*数据库原理164.2.4关系代数等价变换规则l.连接、笛卡尔积交换律2.连接、笛卡尔积的结合律3.投影的串接定律4.选择的串接定律5.选择与投影的交换律6.选择与笛卡尔积的交换律7.选择与并的交换8.选择与差运算的交换9.投影与笛卡尔积的交换l0.投影与并的交换*数据库原理174.2.5关系代数表达式的优化算法分解选择运算通过交换选择运算,将其尽可能移到叶端通过交换投影运算,将其尽可能移到叶端合并串接的选择和投影,以便能同时执行或在一次扫描中完成对内结点分组生成程序*数据库原理184.2.5关系代数表达式的优化算法分解选择运算通过交换选择运算,将其尽可能移到叶端通过交换投影运算,将其尽可能移到叶端合并串接的选择和投影,以便能同时执行或在一次扫描中完成对内结点分组生成程序*数据库原理194.2.6优化的一般步骤1.把查询转换成某种内部表示2.代数优化:把语法树转换成标准(优化)形式3.物理优化:选择低层的存取路径4.生成查询计划,选择代价最小的*数据库原理20StudentSCJoin(Student.Sno=SC.Sno)Select(SC.Cno=‘2’)Project(Sname)结果
Student.Sno=Sc.Sno
S
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 运行库改造施工方案
- 高速公路标志杆施工方案
- 化粪池混凝土施工方案
- 平远县改门改窗施工方案
- 海南靓绿生物科技有限公司年产建设项目1000吨水溶肥建设项目环评报告表
- 2025年钻孔应变仪项目合作计划书
- 置换强夯的施工方案
- 园路及铺装施工方案
- 山西造浪游泳池施工方案
- 宁夏工程电缆线槽施工方案
- 语文-湖南省长郡二十校联盟2025届新高考教学教研联盟高三第一次联考(长郡二十校一联)试题和答案
- 医疗卫生中心社会效益与经济效益分析
- 3月3号全国爱耳日-保护耳朵课件
- 2025年辽宁装备制造职业技术学院单招职业适应性测试题库(网校专用)
- 2025国家电投集团资本控股限公司本部招聘11人高频重点模拟试卷提升(共500题附带答案详解)
- 2025年湖南中医药高等专科学校高职单招职业技能测试近5年常考版参考题库含答案解析
- 户外拓展训练基地项目策划方案
- 《小兔子安家》(说课稿)-2024-2025学年一年级下册数学北师大版
- 小学生人际交往能力培养的实践研究
- 综合与实践 白昼时长规律的探究说课稿 2024-2025学年人教版数学七年级下册
- 2025年春新人教版数学七年级下册教学课件 7.4 平移
评论
0/150
提交评论