软件学院高级数据库考试攻略(金培权数据库系统实现)资料.ppt

软件学院高级数据库考试攻略(金培权数据库系统实现)资料.ppt

  1. 1、本文档共43页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* * * * * * * * * * * * * * * * * * * * * * * * Homework4 方案2: Read M-1 blocks ((M-1)×1/S(S) tuples) of S Read all of R(using 1 block) + join 代价为:T(S)+B(R)*T(S)*S(S)/(M-1) 选择代价最小的方案 (2)R是非聚集的: 方案1: For each loop: Read M-1 blocks ((M-1)×1/S(R)tuples) of R Read all of S (using 1 block)+ join 代价为:T(R)+T(R)*B(S)*S(R)/(M-1) Homework4 方案2: For each loop: Read M-1 blocks of S Read all of R(using 1 block)+ join 代价为:B(S)+T(R)*B(S)/(M-1) 选择代价最小的方案 比较2种情况下的最优代价 Homework4 假设这节中所描述算法的第二趟不需要所有的M个缓冲区,因为子表数小于M。我们怎样通过使用额外的缓冲区来节省磁盘I/O? 原本我们需要将第一趟中得到的有序子表都写回磁盘,现在由于子表数小于M,可以将部分子表不写回,直接存储在内存缓冲区中,从而减少第二趟中的读子表操作,对于这样每块我们节省了 2 次IO. Test 1 假设某磁盘块参数如下:容量36.7GB,传输速率45MB/S,旋转一圈时间4ms,平均寻道时间5ms,最小寻道时间0.65ms,一个磁道大小180KB。如果磁盘块大小4KB,请回答下面问题: (1)随机读取1000个磁盘块需要多少时间(ms)? (2)假定(1)中的1000个磁盘块在单个磁道上连续存储,并且所有磁盘块存储在相邻的磁道上,此时读取这1000个磁盘块需要多少时间? Test 1 Test 1 顺序读取1000个块 Test B+-Tree设定如下: N: 记录数 n: B+-Tree的阶,即节点所能容纳的键数 R: 读取一个磁盘块的旋转延迟 S: 读取一个磁盘块的寻道时间 T: 读取一个磁盘块的传输时间 m: 在内存的m条记录查找一条记录的时间 假设所有磁盘块都不在内存中 现在考虑压缩B+-Tree,假设每个节点的键值压缩1倍,即同样空间可压缩存储2n个键值和2n+1个指针。额外代价是解压缩,设每个压缩键值的内存解压时间为c,请问在一棵满的n阶压缩B+-Tree中查找给定记录地址的时间多少?(n+1可近似表示为n) Test 2. 读块的时间 = R + S + T 3. 每块有n条记录,内存查找时间为 n 6. 增加了解压时间2cn,内存查找时间变为2n Final Exam 考试形式不同于往年,往年为开卷考试,今年为闭卷考试,总共10个判断题,及4个大题。 10个判断,30分,个人感觉不容易,考点比较细,都是一些概念的判断,考的基本都是前三章的内容,请大家仔细复习。(eg:ER图是自下向顶设计的;关系模型中候选码一定要存在;一个只有2个属性的关系模式一定满足第三范式吗) 第一个大题考的是PPT第七章的内容,查询优化,老师上课讲的PPT上不全,只要把书上P153页5.4.3内容掌握即可完美答题。题目难度:一颗星 Final Exam 第二个大题考的是PPT第十章的内容,并发调度,考察冲突可串性及优先图的画法,掌握PPT即可。题目难度:一颗星 第三个大题考的是模糊查询结合B+树索引查询(问题是否能用B+树索引查询应用于模糊查询能否提高查询效率),金老师上课基本没提到模糊查询,因此需要自己结合SQL中模糊查询的原理和B+树索引查询原理解答。题目难度:四颗星 第四个大题考的是PPT第八章的内容,查询执行,主要考察优化的归并排序算法。题目难度:五颗星(题目见附录) 附第五题 我们想将关系R按某个字段排序。已知R的下列信息: ? R包含 100000 个元组,即 T(R) = 100000. ? 一个磁盘块大小为 4000 bytes. ? R的元组大小为 400 bytes,即S(R) = 400. ? 关系R在磁盘上是非连续(contiguous)存放的? ? 排序字段的大小为 32 bytes. ? 记录指针的大小为 8 bytes. (普通硬盘读写一个块的时间都是30t,固态硬盘读取一个块的时间是t,写出一个块的时间为50t。) 考虑下面改进的归并排序算法。原来的两阶段归并排序的第一阶段是将排序后的整个元组写到chunk中,现在我们仅将排序后的 sorting

文档评论(0)

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

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

1亿VIP精品文档

相关文档