![查询树的优化_第1页](http://file4.renrendoc.com/view/17a0b5cfb0122b776616e0d6c71699ab/17a0b5cfb0122b776616e0d6c71699ab1.gif)
![查询树的优化_第2页](http://file4.renrendoc.com/view/17a0b5cfb0122b776616e0d6c71699ab/17a0b5cfb0122b776616e0d6c71699ab2.gif)
![查询树的优化_第3页](http://file4.renrendoc.com/view/17a0b5cfb0122b776616e0d6c71699ab/17a0b5cfb0122b776616e0d6c71699ab3.gif)
![查询树的优化_第4页](http://file4.renrendoc.com/view/17a0b5cfb0122b776616e0d6c71699ab/17a0b5cfb0122b776616e0d6c71699ab4.gif)
![查询树的优化_第5页](http://file4.renrendoc.com/view/17a0b5cfb0122b776616e0d6c71699ab/17a0b5cfb0122b776616e0d6c71699ab5.gif)
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
章查询优化
2021/5/914.1关系数据库系统的查询处理查询处理步骤Sfromstudent,scWherestudent.sno=o=2;例:选修了2号课程的学生姓名2021/5/924.1关系数据库系统的查询处理Sfromstudent,scWherestudent.sno=o=2;1.查询分析:识别其中的关键字,属性名,表名。2.查询检查:属性名是否有效,表名是否有效等。3.查询优化:例如上例中先执行连接还是先执行
o=2从sc表中进行选择。选用何种方法进行连接。4.查询执行。2021/5/934.1关系数据库系统的查询处理查询处理步骤查询分析:对查询语句进行扫描、词法分析和语法分析。查询检查:语义检查查询优化:代数优化和物理优化查询执行2021/5/944.1关系数据库系统的查询处理为什么进行代数优化?例:选修了2号课程的学生姓名Πsname(o=‘2’
(SC
Student))Πsname(student.sno=sc.snoΛ
o=‘2’
(SCХStudent))Πsname(o=‘2’(SC)
Student))2021/5/954.1关系数据库系统的查询处理Πsname(student.sno=sc.snoΛ
o=‘2’
(SCХStudent))假设有1000个学生记录,10000个选课记录,2号课程的选课记录为500个。1.笛卡尔积计算:1000*100002.选择:扫描1000*10000个记录3.投影2021/5/964.1关系数据库系统的查询处理假设有1000个学生记录,10000个选课记录,2号课程的选课记录为500个。1.连接,采用嵌套循环:10000*1000,得到10000个结果2.选择:扫描10000个记录3.投影Πsname(o=‘2’
(SC
Student))2021/5/974.1关系数据库系统的查询处理假设有1000个学生记录,10000个选课记录,2号课程的选课记录为500个。1.选择:扫描10000个记录,得到500个记录2.连接,采用嵌套循环:500*1000次,得到500个记录3.投影Πsname(o=‘2’(SC)
Student)
选择操作先做可以提高效率。2021/5/984.2代数优化4.2.1关系代数表达式等价变换规则
等价的概念:若关系表达式f(E1,E2,…,En)的结果与关系表达式g(E1,E2,…,En)的结果是同一个关系,那么称这两个表达式等价。若关系表达式E1和E2是等价的可以记为:2021/5/99等价变换规则1.连接、笛卡儿积交换率设E1和E2是关系代数表达式,F是连接运算的条件,则有:2021/5/910等价变换规则1.连接、笛卡儿积的结合率设E1,E2,E3是关系代数表达式,F1和F2是连接运算的条件,则有:2021/5/911等价变换规则2.连接、笛卡儿积的结合率设E1,E2,E3是关系代数表达式,F1和F2是连接运算的条件,则有:≡Student(SCCourse)StudentSCCourseSC(StudentCourse)≡StudentSCCourse2021/5/9123.投影的串接定律
这里,E是关系代数表达式,Ai(i=1,2,…,n),Bj(j=1,2,…,m)是属性名且{A1,A2,…An}是{B1,B2,…,Bm}的子集。等价变换规则2021/5/9134.选择的串接定律等价变换规则求IS系年龄大于19岁的学生:2021/5/9144.选择的串接定律
E是关系代数表达式,F1和F2是选择条件。选择的串接定律说明选择条件可以合并,这样一次就可以检查全部的条件。等价变换规则2021/5/915等价变换规则2021/5/9165.选择与投影的交换律
此时,条件F只涉及属性组A。若条件中有不属于A的属性组B,那么有更一般的规则:等价变换规则2021/5/9176.选择与笛卡尔积的交换(1)F只涉及E1的属性。(2)F=F1∧F2,且F1只涉及E1的属性,F2只涉及E2的属性。(3)F=F1∧F2,且F1只涉及E1的属性,而F2涉及E1和E2的属性。2021/5/918(1)实例:选修1号课程的学生信息等价变换规则(2)实例:信息系选修1号课程的学生信息2021/5/9197.选择与并的分配率设E=E1∪E2,E1和E2有相同的属性名,则:注:先做选择可以减少读取写入的数据,因此减少磁盘IO量,从而提高了效率。等价变换规则2021/5/920设S1是计科041的学生关系表,S2是计科042的学生关系表:等价变换规则2021/5/9218.选择与差运算的分配率设E1和E2有相同的属性名,则:注:先做选择可以减少读取写入的数据,因此减少磁盘IO量,从而提高了效率。等价变换规则2021/5/922设S1是计科041的学生关系表,S3是计科专业的学生关系表:等价变换规则2021/5/9239.选择对自然连接的分配率F只涉及E1和E2的公共属性。注:先做选择可以减少做笛卡儿积的数据,结果关系的数据量也同步减少,因此减少磁盘IO量,提高了效率。等价变换规则2021/5/924等价变换规则2021/5/92510.投影与笛卡尔积的分配律
设E1和E2是两个关系表达式,A是E1的属性组,B是E2的属性组。则:注:先做投影可以减少读取写入的数据,因此减少磁盘IO量,从而提高了效率。等价变换规则2021/5/926查找所有学生可能的选课对:等价变换规则2021/5/92711.投影与并的分配律设E1和E2有相同的属性名,则:注:先做投影可以减少读取写入的数据,因此减少磁盘IO量,从而提高了效率。等价变换规则2021/5/928设S1是计科041的学生关系表,S2是计科042的学生关系表:查找计科041、042的学生姓名:等价变换规则2021/5/929优化规则:选择运算尽可能先做。投影运算和选择运算同时进行。把投影运算同其前后的双目运算结合执行。选择运算和笛卡儿积运算结合成连接运算。找出公共子表达式,避免重复运算。2021/5/9304.2.2查询树的优化4.2代数优化1.查询树××SCSC2021/5/9314.2.2优化算法1.利用规则4分解选择运算。2.利用规则4~9把选择运算尽量移到叶端。3.利用规则3,5,10,11把投影运算尽量移到叶端。4.利用规则3~5把选择和投影的串接合并成单个选择、单个投影或一个选择后跟一个投影的形式。使尽可能多的选择和投影同时执行。5.分组。双目运算和他的直系祖先为一组;双目运算后代直道叶子全是单目运算时并入改组。笛卡儿积的后面若不是与之可以合并的自然连接的等值选择时,其后代单独分为一组。2021/5/932优化实例例:查询至少选修了一门先行课号为5号课程的学生姓名。其中,C是课程表,S是学生表,SC是学生选课表。在优化规则中没有对自然连接的直接优化,我们把自然连接分解为笛卡儿积和选择。2021/5/933分解后的关系代数表达式××SCSC2021/5/934第一步:利用规则4分解选择运算××SCSC2021/5/935第二步:尽量下放选择运算××SCSC2021/5/936××SCSC第二步(2):下放完成后:2021/5/937第三步:尽量下放投影运算××SCSCE2021/5/938第三步:尽量下放投影运算××SCSC2021/5/939第三步(2):第一次下放后:××SCSC2021/5/940第三步(3
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025团体人寿保险合同
- 2025建设工程施工专业分包合同土护降
- 个人外包设计合同范例
- 内墙涂料合同范本
- 制药品采购合同范本
- 农村车位购买合同范例
- 公家店铺租赁合同范例
- 会场安保合同范本
- 个人抵押银行合同范例
- 个人培训协议合同范例
- 保育员教学大纲和教学计划
- XX站SCADA系统升级改造施工方案(模板)
- 偶函数讲课课件
- 中医治疗“湿疹”医案72例
- 《X公司应收账款管理研究14000字(论文)》
- 交通工程公司乳化沥青储油罐拆除工程安全协议书
- YS/T 441.1-2014有色金属平衡管理规范第1部分:铜选矿冶炼
- GB/T 23791-2009企业质量信用等级划分通则
- 员工自主报告和举报事故隐患奖励汇总表
- 清代文学绪论
- 阿里云数字化转型生态介绍课件
评论
0/150
提交评论