数据库-第九章2.ppt_第1页
数据库-第九章2.ppt_第2页
数据库-第九章2.ppt_第3页
数据库-第九章2.ppt_第4页
数据库-第九章2.ppt_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、Introduction to database system,信息工程系,数据库系统简介An Introduction to Database System,演示者:Zhao yun,An Introduction to Database Systeme1e2,an introduction to database system,第9章关系查询处理和相应的查询优化。9.3.1关系代数表达式等效转换规则,1 .连接,笛卡尔乘积交换规则集E1和E2是关系代数表达式,f是连接操作的条件,E1 E2 E2 E1 E2 E1 E1 E1 E2 E1 E1 E2 E1 E12。连接,笛卡尔乘积的连接法则

2、E1、E2、E3是关系代数表达式,F1和F2是连接操作的条件,(e1e 2)e3e 1(e2e 3)(e1e 2)e3e 1(e2e 3)(e1e 2)e3e 1投影的螺纹法则(E) (E),其中E是关系代数表达式,Ai(i=1,2,n),Bj(j=1,2,m)是属性名,A1,4.选定的螺纹法则(E) (E),其中E是关系代数表达式,F1,F2是选择标准。选定的螺纹法则说明了可以组合选择条件。这样可以一次检查所有条件。An Introduction to Database System,第9章关系型查询处理及其查询优化,第5章。与投影作业的交换规则F(E)(F (E)(E)选取(F(E)选取条

3、件F仅包含属性A1、An。如果属性B1不属于A1,An,则Bm具有更一般的规则。(f (e) (f (e),an introduction to database system,第9章关系型查询处理和查询优化,6 .为笛卡尔选择开关法则如果与F相关的所有属性都是E1的属性,(E1E2) (E1)E2是F=F1F2,F1只处理E1的属性,F2只处理E2的属性,(E1E2) (E1) (E2)以上的等效转换规则1、4、6、introduction to database system,第9章关系型查询处理和查询优化,7 .and的分配规则E=E1E2,E1,E2具有相同的属性名称时,F(E1E2)

4、F(E1)F(E2) 8。选择差异运算的分配法则如果E1和E2具有相同的属性名称,则为F(E1-E2)F(E1)-F(E2) 9。自然连接的分割法则F(E1 E2)F(E1)F(E2)F(E2)F仅涉及E1和E2的公共属性,introduction to database system,第9章关系查询处理和查询优化,10 .投影和笛卡尔乘积的分配法则E1和E2是两个关系表达式:A1,An是E1的属性,B1,Bm是E2的属性(e1e 2)(E1)(E2)(E2)11。投影和合意分配规则设置为E1和E2具有相同的属性名称(E1E2) (E1) (E2) (E2),Introduction to d

5、atabase system,第9章关系查询处理和查询优化,一般启发式规则必须尽可能先执行选择操作。优化策略中最重要和最基本的2。如果投影和选择操作同时有多个投影和选择操作,并且两者都是相同的关系操作,则可以在扫描关系的同时完成所有这些操作,以避免重复扫描关系,并执行An Introduction to Database System,第9章关系查询处理和查询优化。3.将投影与前面或后面的双目运算相结合4。合并要在此之前执行的笛卡尔乘积的部分选择5。查找公共子表达式如果此迭代子表达式的结果不太大,并且从外部存储读取此关系所需的时间比计算子表达式要少得多,则建议计算公共子表达式一次,然后将结果写

6、入中间文件。定义视图的表达式是查询视图时的公共子表达式。introduction to database system,第9章关系查询处理和查询优化,以及优化关系表达式的算法。算法:关系表达式的优化输入:关系表达式的查询树输出:优化查询树方法:(1)使用等效转换规则4将F1F2Fn(E)转换为f1 (fn (e)。(2)对于每个选择,使用等效变换规则49尽可能地移动到树的叶端。introduction to database system,第9章关系查询处理和查询优化,(3)对于每个投影,使用相同的转换规则3、5、10和11的常规形式,尽可能导航到树的叶末尾。注:对等转换规则3将部分投影消亡规

7、则5将一个投影拆分为两个投影,并使用可能将其中一个移动到树的叶端(4)的对等转换规则35,将选择和投影的线程合并到单个选择、单个投影或选择之后的投影中。将允许同时执行多个选择或投影或在一次扫描中全部执行的An Introduction to Database System、第9章关系型查询处理及其查询优化、(5)对上述语法树的内部节点进行分组。每个双目运算(,-)和所有直系祖先都是一个组(这些直系祖先是(,运算)。在叶子全部成为单眼运算之前,后代也合并到组中,但是如果双眼运算是笛卡尔乘积(),之后不是构成等效连接的选择,则不能将选择与此双眼运算组合在一起,单独分组相应的单眼运算。An Intr

8、oduction to Database System,第9章关系型查询处理及其查询优化,示例4下是示例3中SQL语句的代数优化示例。(1)将SQL语句转换为查询树,如下图所示。查询树、关系代数语法树、优化查询树、An Introduction to Database System、第9章关系查询处理及其优化查询,代数优化更改查询语句中操作的顺序和组合,而无需默认访问路径。代数优化不足以实现物理优化。这意味着您需要选择高效合理的操作算法或访问路径,查找优化的查询计划,9.4物理优化,introduction to database system,第9章关系查询处理,以及查询优化。选择方法:基于

9、规则的启发式优化基于成本的优化的组合优化方法,An Introduction to Database System,第9章关系查询处理及其查询优化,9.4.1启发式基于规则的访问路径选择优化,一,选择操作的启发式规则: 1。对于较小的关系,请使用全表顺序扫描。即使选择列中有索引,启发式规则也是:2.对于选择条件为主值的查询结果,请选择主密钥索引(常规RDBMS)(最多一个元组)自动建立主密钥索引。,introduction to database system,第9章处理关系型查询和优化查询,第3章。对于选择条件为非默认属性值的查询,可以使用包含要评估查询结果的索引的列元组数选择索引扫描方法的

10、百分比(10%)较小,也可以使用全表顺序扫描4。如果选择标准是不等同于属性的查询或范围查询,并且选择列中具有要评估查询结果的索引的元组数的百分比(10%)较小,则可以使用索引扫描方法,也可以使用全表顺序扫描。Introduction to database system,第9章处理关系型查询和优化查询,第5章。对于用AND连接的组合选择条件,如果包含这些属性的组合索引优选组合索引扫描方法,并且某些属性具有常规索引,则可以使用用例1-C4中所述的索引扫描方法,或者使用全表顺序扫描。6.对于使用OR链接的提取选择条件,通常使用全表顺序扫描、An Introduction to Database System、第9章关系型查询处理和查询优化。第二,连接操作的启发式规则:1 .如果两个表按连接属性排序,则可选排序-合并方法2。如果表具有连接属性的索引,则可选索引连接方法3。如果上述两个规则都不适用,则其中一个表的散列联接方法较小,introduction to database system,第9章关系型查询处理和查询优化,第4章。您可以选取巢状回圈方法,并选取其中较小的表格。使用正确使用的块数(b)较少的表作为外部循环表。原因:设置连接表r和s分别占用的块数如果用于Br和Bs连接操作的内存缓冲区块数K的K-1块分配r是外形的,则嵌套循环访问的块数必须是Br (Br/K-1)Bs,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论