数据库系统实现习题 全

上传人:ldj****22 文档编号:34015021 上传时间:2018-02-20 格式:DOCX 页数:28 大小:715.75KB
返回 下载 相关 举报
数据库系统实现习题 全_第1页
第1页 / 共28页
数据库系统实现习题 全_第2页
第2页 / 共28页
数据库系统实现习题 全_第3页
第3页 / 共28页
数据库系统实现习题 全_第4页
第4页 / 共28页
数据库系统实现习题 全_第5页
第5页 / 共28页
点击查看更多>>
资源描述

《数据库系统实现习题 全》由会员分享,可在线阅读,更多相关《数据库系统实现习题 全(28页珍藏版)》请在金锄头文库上搜索。

1、(达建松 2141280)习题 2.2.1 M egatron 777 磁盘具有以下特性:1)有 10 个盘面,每个盘面有 100000 个磁道。2)磁道平均有 1000 个扇区,每个扇区为 1024 字节3)每个磁道的 20%被用于间隙。4)磁盘旋转为 10000 转/min。5)磁头移动 n 个磁道所需要的时间是 1+0.0002n ms。回答下列有关 Megatron777 的问题。a)磁盘的容量是多少?b)如果磁道是在直径 3.5 英寸的圆面上,那么一个磁道的扇区中的平均位密度是多少?c)最大寻道时间是多少?d)最大旋转等待时间是多少?e)如果一个块是 65536 字节(即 64 扇区

2、) ,一个块得传输时间是多少?f)平均寻道时间是多少?g)平均旋转等待时间是多少?答案:a) 磁盘容量=盘面数*磁道数*扇区数* 扇区容量=10*100000*1000*1024 字节=210*109 字节注释:已知1)有 10 个盘面,每个盘面有 100000 个磁道。2)磁道平均有 1000 个扇区,每个扇区为 1024 字节.b) 一个磁道存放存放 1000*1024*8=8192000bits.直径为 3.5 英尺那么中间磁道直径为 3.5/2(英寸) 中间扇区所占的周长是80 *3.5/2(英寸)所以,每个磁道的扇区中的平均密度是 注释:已知: 2)磁道平均有 1000 个扇区,每个

3、扇区为 1024 字节.3)每个磁道的 20%被用于间隙 . c) 最大寻道时间是磁头跨越全部柱面所花费的时间。即 1+0.0002*99999=20.9998ms已知: 1)有 10 个盘面,每个盘面有 100000 个磁道。 5)磁头移动 n 个磁道所需要的时间是 1+0.0002n ms。 d) 最大旋转等待时间是磁头旋转一圈的时间。即 1/(10000/60)= 6ms已知: 4)磁盘旋转为 10000 转/min。e) 该块占用 64 个扇区,为此,磁头必须越过 64 个扇区和扇区之间的 63 个间隙。由于间隙合在一起占 72 度圆弧,而扇区覆盖剩余 288 度圆弧,则被它们覆盖的圆

4、弧的总度数为: 72*(63/1000)+288*(64/1000)=22.968 则传输时间是(22.968/360)*0.6ms=0.03828ms已知:3)每个磁道的 20%被用于间隙。2)磁道平均有 1000 个扇区 。d)中最大旋转等待时间为 6ms。f) 磁头行进的平均距离是跨越柱面的 1/3,则平均寻道时间是:1+0.001*(100000/3)=34.33msg) 平均旋转等待时间为磁盘旋转半周所需时间: (1/2)*6ms=3ms(潘达)习题 2.3.1假设我们正在为 Megatron747 磁盘调度 I/O 请求,磁头的初始位置在磁道 32000,图 2-9 的请求已经产生

5、。在下列两种情况下,每一种请求在何时可以完全得到服务?a) 我们采用电梯调度算法(起初朝任何一个方向开始移动都是允许的) 。b) 我们采用先到达先服务调度。请求的柱面 到达时间8000 048000 14000 1040000 20图 2-9 4 个块访问请求的到达时间Megatron747 磁盘的平均寻道时间、旋转等待时间和传输时间分别为 6.46、4.17 和0.13(所有时间均以 ms 计算) 。因为每个块访问导致 0.13ms 传输时间和 4.17ms 平均旋转等待时间,即无论寻道时间是多少,都需为每一次块访问加上 4.3ms。寻道时间可通过Megatron747 的规则计算:1+磁道

6、数/4000(1+磁道数/500) 。对于电梯调度算法,计算方式及结果如下。对柱面 8000 的第一个请求需要进行寻道,因为磁头初始位置不是 8000。这样访问 8000 完成的寻道时间为 1+(32000-8000)/4000ms,即在时间 1+(32000-8000)/4000+4.3=11.3ms 处第一次访问将完成。在此之前,对柱面 48000和 4000 访问的请求分别于第 1 和第 10 时间到达,由于沿着柱面从高到低(32000-8000)方向还有请求 4000,则先处理 4000 的请求。即在第 11.3ms 后,磁头由柱面 8000 向柱面4000 移动,此段寻道时间为 1+

7、(8000-4000)/4000=2ms,则 4000 访问完成时间为11.3+2+4.3=16.8ms。当访问 4000 柱面完成时,仅有访问 48000 柱面的请求未完成,因此磁头将沿着从低到高移动,移动到 48000 需要 1+(48000-4000)/4000=12ms,即在12+16.8=28.8ms 才可到达 48000 柱面。在向 48000 移动过程中,移动到 40000 柱面的寻道时间为 1+(40000-4000)/4000=10ms,即在 16.8+10=26.8ms 访问到 40000,在此之前访问40000 的请求已经到达(在第 20ms 到达的),故而,在访问 48

8、000 之前,先处理访问 40000的请求,即对 40000 柱面的请求在 16.8+10+4.3=31.3ms 处理完成。从柱面 40000 到 48000的寻道时间为 1+(48000-40000)/4000=3ms,则 48000 的请求处理完成时间为31.1+3+4.3=38.4ms。综上所述,对于电梯调度算法而言每个请求的完成时间如下表:请求的柱面 到达时间 完全得到服务时间8000 0 11.348000 1 38.44000 10 16.840000 20 31.1对于 FCFS 算法而言每个请求的完成时间如下表:请求的柱面 到达时间 完全得到服务时间8000 0 0+7+4.3

9、=11.348000 1 11.3+11+4.3=26.64000 10 26.6+12+4.3=42.940000 20 42.9+10+4.3=57.2(周红磊 2141284)习题 2.3.2 假设我们使用两台 Megatron 747 磁盘 互相作为镜像。然而,我们使第一个磁盘的磁头保持在柱面的靠内一半,第二个磁盘的磁头保持在柱面靠外的一半,而不是允许从两个磁盘都能读任何的块。假设读请求是对随机的磁道,我们始终不必去写:a) 系统的能够读块的平均速率是多少?读块的平均速率为之前单个磁头的两倍。b) 这个速率与无任何约束的镜像 Megatron 747 磁盘的平均速率相比如何?平均速率一

10、样。c)你预计该系统的缺点是什么?1. 缺点是以空间为代价换取时间。2. 如果其中的一个磁头坏了,则读取操作就出问题了,每次只能读取一半的数据。2.4.1 计算下列位序列的奇偶校验位:a)00111011。b)00000000。c)10101101。解:定义:如果有奇数个数据盘的第 j 位为 1,在冗余盘中,我们选取位 j 为 1,;如果在数据盘中的第 j 位有偶数个 1,我们选取冗余盘的位 j 为 0。即:有奇数个 1,为 1;有偶数个 1,为 0。0 0 1 1 1 0 1 10 0 0 0 0 0 0 01 0 1 0 1 1 0 1-10010110(薛鑫)2.4.2如果我们在一个串末

11、附加一个位作为该串奇数位置的奇偶校验位,另一个位作为该串各偶数位置的奇偶位,我们就有了与一个串关联的两个奇偶位。对于习题 2.4.1 的每一个串,找出按这种方法计算的两个位。a)00111011。b)00000000。c)10101101。解:RAID5 级,不必将一个盘作为冗余盘,而把其他盘作为数据盘;相反我们可以把每个磁盘作为某些块的冗余盘来处理。12345678-0 0 1 1 1 0 1 1 100 0 0 0 0 0 0 0 001 0 1 0 1 1 0 1 10(韩月 2141276)2.4.7采用如习题 2.4.5 一样的 RAID4 级方案,假设数据盘 1 有故障。在下列情况

12、下恢复该磁盘的块:a) 盘 2 至盘 4 的内容为 01110110、11000000 和 00101011,同时冗余盘保存着11110011。b) 盘 2 至盘 4 的内容为 11110000、11111000、00110011,同时冗余盘保存着 10000001。解:a. 1-0 1 1 0 1 1 1 02-0 1 1 1 0 1 1 03-1 1 0 0 0 0 0 04-0 0 1 0 1 0 1 1冗-1 1 1 1 0 0 1 1b. 1-1 0 1 1 1 0 1 02-1 1 1 1 0 0 0 03-1 1 1 1 1 0 0 04-0 0 1 1 0 0 1 1冗-1 0

13、 0 0 0 0 0 12.4.8假设习题 2.4.5 第 1 个盘得块被改变为 01010101。其他盘上相应的块必须做什么样的改变?解:a) 由数据盘各位的模 2 和可求得冗余盘的各位,即 00000110。当盘 1 由 01010110 改为 01010101 时,求盘 1 旧值与新值的模 2 和,得到 00000011。将冗余块自身和 00000011求模 2 和,得到新的冗余块,即 00000101。所以盘 1 变为 01010101,冗余盘变为00000101,盘 2、3、4 没变化。b) 由数据盘各位的模 2 和可求得冗余盘的各位,即 01110101。当盘 1 由 111100

14、00 改为01010101 时,求盘 1 旧值与新值的模 2 和,得到 10100101。将冗余块自身和 10100101 求模 2 和,得到新的冗余块,即 11010000。所以盘 1 变为 01010101,冗余盘变为11010000,盘 2、3、4 没变化。(张柳影 2141286)习题 2.4.9如果我们有例 2.13 的 RAID6 级方案,4 个数据盘的块分别为00110100、11100111、01010101 和 10000100。a) 冗余盘的相应块是什么?b) 如果第 3 个盘的块被重写成 01111111,必须采取哪些步骤以改变其他盘?注例 2.13 内容:假设块只有 8

15、 位长,并且关注在我们的 RAID6 级示例中用到的 7 个磁盘的第一块。首先,假设数据盘和冗余盘的第一块的内容如图 2-11 所示。请注意,盘 5 的块是前 3 个盘的块模2 和,第 6 行是行 1、2、4 的模 2 和,而最后一行是行 1、3、4 的模 2 和。磁盘 内容数据块 1) 111100002) 101010103) 010101014) 10000100冗余块 5) 011000106) 000110117) 10001001图 2-11 所有磁盘的第一块答案:a)前 4 个盘是数据盘,盘 57 是冗余盘.盘 5 的块是前 3 个盘的块的模 2 和, 盘 5 块是 100001

16、10;盘 6 是盘 1,2 和 4 的模 2 和, 盘 6 块是 01010111;盘 7 是盘 1,3,4 的模 2 和, 盘 7 块是 11100101。磁盘 内容数据块 1) 001101002) 111001113) 010101014) 10000100冗余块 5) 100001106) 010101117) 11100101b)如果第 3 个盘的块被重写成 01111111,求这个序列和序列 01010101(该块的旧值)的模 2和,则得到 00101010;其中为 1 的位为 3、5、7,所以只要对冗余块 5 和 7 的 3、5、7 位取反,故盘 5 和盘 7 的重写值分别为 10101100、11001111。磁盘 内容数据块 1) 001101002) 111001113) 01111111

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号