第章 . 代数优化_第1页
第章 . 代数优化_第2页
第章 . 代数优化_第3页
第章 . 代数优化_第4页
第章 . 代数优化_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

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

文档简介

第九章关系查询处理及其查询优化9.1关系数据库系统的查询处理9.2关系数据库系统的查询优化9.3代数优化9.4物理优化9.5小结RDBMS查询处理步骤9.3代数优化要解决两个问题:如何构造查询树(语法分析树)?如何进行代数优化?依据(规则)是什么?代数优化:是指关系代数表达式的优化。各种关系查询语言都可以等价地转换为关系代数表达式,因此关系代数表达式的优化是查询优化的基本课题代数优化策略:通过对关系代数表达式的等价变换来提高查询效率9.3.1查询优化的一般准则选择运算应尽可能先做在优化策略中这是最重要、最基本的一条。在执行连接前对关系适当地预处理(建立索引,排序)预处理方法主要有两种:第一种称为索引连接方法。在连接属性上建立索引,然后执行连接。第二种称为排序合并连接方法。将关系中元组按某个值排序,然后执行连接将投影运算和选择运算同时进行如有若干投影和选择运算,并且它们都对同一个关系操作,则可以在扫描此关系的同时完成所有的这些运算以避免重复扫描关系9.3.1查询优化的一般准则将投影同其前或其后的双目运算结合起来,减少扫描关系的次数将某些选择同在它前面要执行的笛卡尔积结合起来成为一个连接运算,连接运算比笛卡尔积省很多时间找出公共子表达式:如果这种重复出现的子表达式的结果不是很大的关系并且从外存中读入这个关系比计算该子表达式的时间少得多,则先计算一次公共子表达式并把结果写入中间文件是合算的定义视图的表达式就是公共子表达式的情况9.3.2关系代数表达式的等价变换规则关系代数表达式的等价:指用相同的关系代替两个表达式中相应的关系所得到的结果是相同的两个关系表达式E1和E2是等价的,可记为E1≡E2常用的等价变换规则:1)连接、笛卡尔积的交换律设E1和E2是关系代数表达式F是连接运算的条件2)连接、笛卡尔积的结合9.3.2关系代数表达式的等价变换规则3)投影的串接4)选择的串接5)选择与投影的交换6)选择与笛卡尔积的交换9.3.2关系代数表达式的等价变换规则7)选择与并的交换8)选择与差的交换9)投影与笛卡尔积的交换10)投影与并的交换9.3.3关系代数表达式的优化步骤1、构造查询树第一步:把用高级语言定义的查询转换为关系代数表达式。以SELECT子句对应投影操作,以FROM字句对应笛卡尔积,以WHERE子句对应选择操作,生成原始查询树。SQL语句转化为原始查询树9.崭3.卡3关系箩代数糟表达鄙式的倚优化物步骤第二融步:毕把关歇系代症数表嚷达式夫转换探为查详询树胁。查询均树是镜一种脚表示违关系变代数已表达阔式的卷树形笋结构六。在肾一个暗查询柴树中捧,叶子弯结点省表示拾关系,内结闯点表刊示关电系代忧数操挥作。查麦询树以自矿底向堆上的方源式执固行:失当一截个内警结点斑的操苦作分够量可史用时鸣,这粗个内千结点绕所表碗示的摔操作亏启动穗执行坏,执顽行结脚束后浩用结弓果关驾系代钉替这吸个内偷结点废。[例]给定油一个寺用SQ伍L语言龙定义匪的查孝询:SE料LE松CT棚AFR方OM谋R1耍,R垫2,责R3WH燃ER影E没P事=1遵5才AN垃D冈N=乱“U猜se捷r”ΠA(σP=1僵5武AN码D克N=狗‘U醋se资r’(R臂1×饲R2挠×R缴3)乏)9.轿3.挺3关系缎代数晶表达叠式的梳优化安步骤2、利井用等涛价转启换规感则反可复地错对查离询表哭达式宗进行太尝试眉性转饱换,残将原戏始的序语法挣树转闸换成瓦“优怎化”径的形须式利用框等价吩变换损规则4把形您如σF1秧∧F肯2∧桑…∧Fn(E)变换传为σF1(σF2(…菌(σFn(E))羡…)踩)。目赔的是抵使选敬择操健作可丝式以灵像活方郑便地辫沿查芦询树惯下移对每写一个滤选择破,利赴用等谷价变放换规悉则4~9尽可扩能把魂它移旱到树谁的叶崭端。拌目的纲是使选麻择操蝇作尽缝早执以行对每闯一个困投影贞利用缠等价降变换俗规则3,9等的匆一般蚂形式弓尽可叙能把病它移汽向树纳的叶降端。间目的副是使投渡影操字作尽蜓早执姐行对每鲜个叶印节点侨加必待要的妇投影肃操作五,以密消除休对查织询无丸用的俩属性革。如果逗笛卡误尔乘死积后脊还须趋按连欺接条屑件进蛇行选就择操按作可晓将两警者组评合成鹅连接搞操作焰。9.啄3.牺3关系范代数琴表达仔式的探优化盗步骤把上纵述得汉到的宁“优除化”涉后的浑语法锁树的分内节篇点分叹组。每一溪双目粪运算都(×,∞摘,∪腾,-)和袜它所俩有的绑直接驼祖先双为一利组(证这些咐直接岛祖先娘是σ,Л运算慢)。如果引其后峡代直拒到叶萝子全捏是单榆目运烈算,拢则也疾将它本们并唤入该廉组。生成玩一个敬查询削代码赠,每搞组结羽点的雄计算惹是程轨序中漂的一极步(即每族一步划计算唱一个办子树)。各惯步的叫顺序鸭是任拼意的能,只纸要保故证任抓何一酒组的桥计算它不会禽在它龙的后圈代组饿之前异计算晓。9.郑3.宝4查询蹦优化舟实例设有S(供应咽商),P(零件),SP安(供应雁关系)三个覆关系洗,关额系模另式如辽下:S(感SN输UM恢,S瞒NA痒ME毛,C穗IT存Y)P(班PN某UM爹,P义NA鼠ME饱,W董EI临GH鞭T,宁SI抄ZE捐)SP宴(S众NU辱M,岩PN寺UM孟,D士EP锯T,菌QU织AN台)有如产下语恨义查谜询:相查询猛来自葱南京羡的供摄应数缴量大省于10航00哪0的bo蔬lt零件横的供罩应商镜的名己称。1、SQ责L语句娱:Q纽奉:SE病LE抽CTSN约AM寇EFR产OMS,叔P,心SPWH望ER墨ES.革SN录UM猛=究S乔P.语SN腹UMAN回D狼SP忆.P盛NU赞M礼=触P.用PN糖UMAN厦D冶S.鞠CI随TY肚=胜‘穿NA框NJ悦IN市G’AN炊D领P.孟PN锅AM天E它=稀‘B瓣OL范T’AN城D厕SP玩.Q董UA肌N亚>歼10估00凭09.夏3.桥4查询叉优化忍实例2、构云造查构询树Q菌:SE谦LE之CTSN强AM伐EFR后OMS,倘P,胀SPWH拴ER固ES.启SN困UM烂=梳S眠P.朵SN迷UMAN蜓D票SP骗.P押NU窄M辞=信P.碌PN哪UMAN秋D嫩S.赖CI蚊TY扶=烘‘熄NA脸NJ籍IN梁G’AN敌D谋P.上PN论AM视E山=赚‘B倾OL跃T’AN差D幕SP因.Q临UA叶N存>鹊10朋00警0原始查询树9.若3.酒4查询骆优化序实例选择室操作扑尽量剧下移原始趴查询泄树9.围3.鱼4查询嗓优化脆实例消除牢对查窝询无爆用的鸡属性优化熟算法徒练习学生-课程库关系虏数据吃库中香包括耕以下擦关系推模式痛:S(S#,Sn情am循e,Ag忠e,Se险x)SC(S#,C#,Gr子ad煤e)C(C#,Cn位am齐e,Te窃

温馨提示

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

评论

0/150

提交评论