北邮-数据库系统原理(英文)-14-15综述.ppt

  1. 1、本文档共106页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
假设 1. |r|=m,|s|=n 2. mn, n/m =k 1 给定r中的元组t1,采用B/B+树索引、二分搜索机制,根据t1.A,查找s中满足t1.A=t2.A的元组t2,所需cost正比于树高,为: O(lgn) r s的cost为: O(mlgn) s r的cost为: O(nlgm) mlgn vs nlgm mn, n/m =k 1, n=k*m nlgm - mlgn = k*mlgm – m(lgk*m ) = k*mlgm – mlgk- mlgm = (k-1)mlgm – mlgk 一般情况下,(k-1)mlgm mlgk E.g. |r|=m=500,|s|=n=1000, k = n/m =2 (k-1)mlgm =500lg500 mlgk=500lg2 Innner Join in SQL Server 实际DBS中的查询优化 教科书上的选择、投影操作下移的实现方式 实际平台下(如SQL Server)与后面的连接操作结合在一起做,避免多次关系代数操作: 1. 采用pipeline,在对参与连接运算的关系扫描过程中完成符合条件的元组—选择 2. 再选出后续步骤需要的属性—投影 查询实验内容 单表、多表(如3张表)的查询、插入、删除、修改所对应的查询执行计划比较 有无索引、索引类型对查询、插入、删除、修改等操作的代价的影响 查询结果相同、但表达形式不一样的多个等价的查询、删除、插入、修改语句的查询执行计划的比较 例如。 delete from loan where amount between 0 and 50 Appendix A Sybase 平台下 的查询执行计划优化(续) Appendix A Sybase 平台下 的查询执行计划优化(续) delete from loan where amount in ( select amount from loan where amount = 0 and amount = 50) Appendix B DDBS查询代价与数据分布的关系 分布式数据库系统DDBS中, 数据在各站点的分布和站点间通讯代价/传输时间将影响到整个查询代价 例. S(S#,SNAME,AGE,SEX) , 104个元组,站点A C(C#,CNAME,TEACHER), 105个元组,站点B SC(S#,C#,GRADE), 106个元组,站点A 元组平均长度100bit,站点间传输速率v = 104 bit/s ,通 信延迟d=1s。假设无副本 查询要求 在支持分片透明性的DDBS(分布在A和B 2个站点)中, 查询“所有选修“MATH“的男生的学号和姓名” SQL(全局)查询语句 SELECT S#,SNAME FROM S,SC, C WHERE S.S# = SC.S# AND SC.C# = C.C# (连接条件) AND SEX=M AND CNAME= MATH (选择条件) 查询代价(query cost) 只考虑通信代价 TC (x) =1s ╳ 传输次数 + 传输的元组bit数 ÷ 104 bit/s Appendix B DDBS查询代价与数据分布的关系 (续) 策略1 将关系C传到A地,在A地进行查询处理 TC1 = 1s + 105 ╳100 bit ÷ 104 bit/s ≈ 103 s ≈ 16.7 min 策略2 将关系S和SC传到B地,在B地进行查询处理 TC2 = 2s + (104 +106 ) ╳ 100 bit ÷ 104 bit/s ≈10100 s≈28h Appendix B DDBS查询代价与数据分布的关系 (续) 策略3 A地从关系SC、S中求出所有男学生的成绩元组,共105个 根据元组中的C#, 向B地的C关系询问(应答过程) CNAME=MATH?共询问105次 TC3 ≈ 2 ╳ 105 ╳ 1 ≈ 2.3天 策略4 在B地从关系C中求出CNAME=MATH的课程元组,假设有10个 根据C#询问A地的S、SC的连接,核实是否为选修MATH(SC.C#= C#?)的男生(S.SEX=M?) Appendix B

文档评论(0)

5500082 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档