- 1、本文档共30页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据库原理9-2课件
第九章 关系查询处理和查询优化;复习上节课内容;本次课学习内容;一、关系数据库系统的查询优化 ;;;RDBMS通过某种代价模型计算出各种查询执行策略的执行代价,然后选取代价最小的执行方案:
集中式数据库
执行开销主要包括:
磁盘存取块数(I/O代价)
处理机时间(CPU代价)
查询的内存开销
I/O代价是最主要的
分布式数据库
总代价=I/O代价+CPU代价+内存代价+通信代价;;实例演示(验证为何需要查询优化?);系统可以用多种等价的关系代数表达式来完成:
Q1=πSname(σStudent.Sno=SC.Sno∧Sc.Cno=2 (Student×SC))
Q2=πSname(σSc.Cno=2 (Student SC))
Q3=πSname(Student σSc.Cno=2(SC))
;1、第一种情况;1)计算笛卡尔积时间;设一个块能装10个Student元组或100个SC元组,在内存中存放5块Student元组和1块SC元组,则读取总块数为:
+ =100 + 20×100=2100块
若每秒读写20块,则总计要花105s ;
连接后的元组数为103×104=107;
设每块能装10个元组,则写出这些块要用106/20=5×104s ;;2)计算选择时间;2、第二种情况;1)计算自然连接时间;3、第三种情况;;二、代数优化;1)连接、笛卡尔积交换律
设E1和E2是关系代数表达式,F是连接运算的条件,则有
E1 × E2≡E2 × E1
E1 E2≡E2 E1
E1 E2≡E2 E1
2)连接、笛卡尔积的结合律
设E1,E2,E3是关系代数表达式,F1和F2是连接运算的条件,则有
(E1 × E2) × E3≡E1 × (E2 × E3)
(E1 E2) E3≡E1 (E2 E3)
(E1 E2) E3≡E1 (E2 E3) ;2、查询树的启发式优化;优化关系表达式的算法(P271) ;;三、物理优化;1、基于启发式规则的存取路径选择优化P273;;2、基于代价的优化P274;代价估算示例 ;总结;练习:
文档评论(0)