02-2 关系系统和其查询优化.pptVIP

  1. 1、本文档共58页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
02-2 关系系统和其查询优化

用户输入查询;查询语句;例:求选修了2号课程的学生姓名。 Q1=π姓名(σS.学号=SC.学号∧SC.课程号=‘2’(S×SC)) Q2=π姓名(σSC.课程号=‘2’(S SC)) Q3=π姓名(S σSC.课程号=‘2’(SC)); 假设有1000个S记录,10000个S_C记录,其中选修2号课程的有50个 每个物理块可放10个S元组或100个S_C元组,在内存中可存放5块S元组和1块S_C元组 p是系统传送一块所需的时间 p=0. 005(s/块);第一种情况 Q1= π姓名(σS.学号=SC.学号∧SC.课程号=‘2’(S×SC)) 计算笛卡尔积 读取的总块数为: 1000/10 +(1000/10*5)*(10000/100) =2100块 读取时间:2100*0.005=10.5s 写入临时文件 连接后的元组数为103*104=107,设每块装10个元组,则写入临时文件的时间为 106*0.005=5*103s;第一种情况: 作选择操作所花的时间 读取中间文件花费时间:5*103s 符合条件的50个,均可放在内存 作投影的时间忽略不计 总I/O时间:10.5+2*5*103 约为104s 相当于2.78个小时;第二种情况: Q2=π姓名(σSC.课程号=‘2’(S SC)) 计算自然连接 读取时间:10.5s 写入临时文件的时间: (10000/10)*0.005=5s 作选择操作所花的时间:5s 符合条件的元组有50个 作投影的时间忽略不计 总I/O时间:10.5+5+5=20.5s;第三种情况: Q3= π姓名(S σSC.课程号=‘2’(SC)) 对SC作选择 读取SC时间:10000/100*0.005=0.5s 符合条件的元组有50个不再需要临时文件 读取S时间: 只需读入S一遍,100*0.005=0.5s 作投影的时间忽略不计 总I/O时间:0.5+0.5=1s; 第一种情况: 10.5+2*5*104=104 第二种情况: 10.5+5+5=20.5s 第三种情况: 0.5+0.5=1s;常见查询优化途径 1)代数优化:对查询表达式进行代数变换,从而改变基本查询操作的次序,提高查询语句的执行效率。 2)物理优化:根据系统提供的存取路径,选择合适的存储策略,如运用关键字和索引这些特点进行查询等,这种方法依赖于存取路径的优化。 3)代价估算优化:除根据一些基本规则外,还对可供选择的执行策略进行代价估算,从中选用代价最小的执行策略。 ; 1、尽可能早地执行选择操作(减少中间运算结果) 2、对关系进行预处理(索引、排序) 3、同时进行投影和选择运算 4、把投影同其前或后的双目运算结合起来。(合并连接的选择与投影操作,以减少扫描的次数) 5、合并选择与笛卡尔积组成一个连接 6、寻找公共子表达式;4、关系代数等价变换规则;3、投影的串接定律 πA1,A2,…,An(πB1,B2,…,Bm(E)) ≡πA1,A2,…,An(E) 4、选择的串接定律 σF1(σF2(E)) ≡ σF1∧F2(E) 5、选择与投影的交换律 σF(πA1,A2,…,An(E)) ≡ πA1,A2,…,An (σF(E))(F只涉及A1,A2,…,An ) πA1,A2,…,An (σF(E)) ≡πA1,A2,…,An σF(πA1,…,An,B1,…,Bm(E))) 6、选择与笛卡尔积的交换律 σF (E1×E2) ≡ σF (E1 ) ×E2 σF (E1×E2) ≡ σF1 (E1 ) × σF2(E2) σF (E1×E2) ≡ σF 2(σF 1(E1 ) ×E2);7、选择与并的交换 σF (E1∪E2) ≡ σF (E1 ) ∪ σF (E2) 8、选择与差的交换 σF (E1-E2) ≡ σF (E1 ) -σF (E2) 9、投影与笛卡尔积的交换律 πA1,A2,…,An,B1,B2,…,Bm (E1×E2) ≡ πA1,A2,…,An (E1) × πB1,B2,…,Bm ( E2) 10、投影与并的交换 πA1,A2,…,An(E1∪E2)≡πA1,A2,…,An (E1)∪ πA1,A2,…,An(E2);5、关系代数表达式的优化算法 输入:一个关系表达式的语法树 输出:计算该表达式的程序 方法: 1)把σF1∧F2 ∧ ...∧Fn(E)变换为 σF1 (σF2(…(σFn( E))…)) 2)对每一个选择尽可能把它移到树的叶

文档评论(0)

yan698698 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档