数据库复习题2(答案)_第1页
数据库复习题2(答案)_第2页
数据库复习题2(答案)_第3页
数据库复习题2(答案)_第4页
数据库复习题2(答案)_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、复习题(2)1、试分别判断下列图中G1和G2是否互模拟(bisimulation),并说明理由:答案:(1)在图中标出各点的状态,我们构造关系5可知G2可以模拟G1,下面我们讨论*7gp效墨)是否可模拟,在 G2中 心 有一个a变换可对应到 G1中2个变换,即g.&wL。但G有两个变换b, c,而在G1中仅存在只有b或只有c的状态点,可知G1和G2不能互模拟。(2)如图,标出各状态点,构造有关系s即SX(几小工乱眩(今0M耳可知其中G1中的点均可由G2中的点模拟,下面我们考虑.胆耿 ca,引 ca 出入可知同样其中G2中的点均可由G1中的点模拟.所以G1和G2为互模拟的。试给出其Str

2、ong DataGuide图答案:Strong DataGuide 图3、 Consider the relation,r , shown in Figure 5.27 . Give the result of the followingquery :buildingrooHUJiimberfunc-s/oL/JcourseJdsecddGarfield359ABIO-1011Garfield359BBIO-1012Saucon651ACS-1012Saucon550CCS-3191Painter705DMU-1991Painter403DFIN-2011Figure 5.27Query 1:

3、select building , room number, time_slo_ id , count (*) from rgroup by rollup (building , room number, time_slo_ id )Query 1:select building , room number, time_slo_ id , count (*) from rgroup by cube (building , room number, time_slo_ id)答案:Query 1返回结果集:为以下四种分组统计结果集的并集且未去掉重复数据。buildingroom numberti

4、me_slo_ idcount (*)产生的分组种数:4种;第一种:group by A,B,CGarfield359A1Garfield359B1Saucon651A1Saucon550C1Painter705D1Painter403D1第二种:group by A,BGarfield359A2Garfield359B2Saucon651A1Saucon550C1Painter705D1Painter403D1第三种:group by AGarfield359A2Garfield359B2Saucon651A2Saucon550C2Painter705D2Painter403D2第四种:gr

5、oup by NULL。本没有group by NULL的写法,在这里指是为了方便说明,而采用之。含义是:没有分组,也就是所有数据做一个统计。例如聚合函数是SUM的话,那就是对所有满足条件的数据进行求和。Garfield359A6Garfield359B6Saucon651A6Saucon550C6Painter705D6Painter403D6Query 2:group by后带rollup子句与group by后带cube子句的唯一区别就是:带cube子句的group by会产生更多的分组统计数据。cube后的列有多少种组合 (注意组合是与顺序无关的)就会有多少种分组。返回结果集:为以下八

6、种分组统计结果集的并集且未去掉重复数据。buildingroom numbertime_slo_ idcount (*)产生的分组种数:8种笫L 种:group by A,B,CGarfield359A1Garfield359B1Saucon651A1Saucon550C1Painter705D1Painter403D1第二种:group by A,BGarfield359A2Garfield359B2Saucon651A1Saucon550C1Painter705D1Painter403D1第三种:group by A,CGarfield359A1Garfield359B1Saucon651

7、A1Saucon550C1Painter705D2Painter403D2第四种:group by B,CGarfield359A2Garfield359B2Saucon651A1Saucon550C1Painter705D1Painter403D1第五种:group by AGarfield359A2Garfield359B2Saucon651A2Saucon550C2Painter705D2Painter403D2种:group by BGarfield359A2Garfield359B2Saucon651A1Saucon550C1Painter705D1Painter403D1第七种:g

8、roup by CGarfield359A2Garfield359B1Saucon651A2Saucon550C1Painter705D2Painter403D2第八种:group by NULLGarfield359A6Garfield359B6Saucon651A6Saucon550C6Painter705D6Painter403D64、 Disks and Access Time Consider a disk with a secto扇区 size of 512 bytes, 63 sectors per tracks 道,16,383 tracks per surfaced 面,8

9、double-sided platterst 面 (i.e., 16 surfaces). The disk platters rotate at 7,200 rpm (revolutions per minute). The average seek time is 9 msec, whereas the track-to-track seek time is 1 msec.Suppose that a page size of 4096 bytes is chosen. Suppose that a file containing 1,000,000 records of 256 byte

10、s each is to be stored on such a disk. No record is allowed to span two pages (use these numbers in appropriate places in your calculation).(a) What is the capacity of the disk?(b) If the file is arranged sequentially on the disk, how many cylinders are needed?(c) How much time is required to read t

11、his file sequentially?(d) How much time is needed to read 10% of the pages in the file randomly?Answer:(a) Capacity = sector size * num. of sectors per track * num. of tracks per surface * num of surfaces = 512 * 63 * 16383 * 16 = 8 455 200 768(b) File: 1,000,000 records of 256 bytes eachNum of reco

12、rds per page: 4096/256 = 161,000,000/ 16 = 62,500 pages or 62,500 * 8 = 500,000 sectorsEach cylinder has 63 * 16 = 1,008 sectorsSo we need 496.031746 cylinders.(c) We analyze the cost using the following three components:Seek time: This access seeks the initial position of the file (whose cost can b

13、e approximated using the average seek time) and then seeks between adjacenttracks 496 times (whose cost is the track-to-track seek time). So the seek time is 0.009 + 496*0.001 = 0.505 seconds.Rotational delay:The transfer time of one track of data is 1/ (7200/60) = 0.0083 seconds.For this question,

14、we use 0.0083/2 as an estimate of the rotational delay (other numbers between 0 and 0.00415 are also fine). So the rotational delay for 497 seeks is 0.00415 * 497 = 2.06255.Transfer time: It takes 0.0083*(500000/63) = 65.8730159 seconds to transfer data in 500,000 sectors.Therefore, total access tim

15、e is 0.505 + 2.06255 + 65.8730159 = 68.4405659 seconds. (d) number of pages = 6250time cost per page: 0.009 (seek) + 0.0083/2 (rotational delay) + 0.0083*8/63 (transfer) =0.0142 secondstotal cost = 6250 * 0.0142 = 88.77 seconds5、Disk Page Layout The figure below shows a page containing variable leng

16、th records. The page size is 1KB (1024 bytes). It contains 3 records, some free space, and a slot directory in that order. Each record has its record id, in the form of Rid=(page id, slot number), as well as its start and end addresses in the page, as shown in the figure.321Start of'/ fret space

17、SLOT DIRECTORYNow a new record of size 200 bytes needs to be inserted into this page. Apply the record insertion operation with page compaction, if necessary. Show the content of the slot directory after the new record is inserted. Assume that you have only the page, not any other temporary space, t

18、o work with.Page Format: Variable Length RecordsSLOT DIRECTORYPointer to start of froo space* Coiiipnctioii: get nil slots 5c offset is not -1, stiff bi/ start (itlilressf move their records up in sorted order. No diane of ruts!Answer:Content of the slot directory, from left to right, is: (650, 200)

19、, (0, 200), (500, 150), (200, 300), 4, 8506、Buffer Management for File and Index Accesses Consider the following two relations:student(snum:integer, sname:char(30), major:char(25), standing:char(2), age:integer)enrolled(snum:integer, cname:char(40)The following index is available:A B+ Tree index on

20、the <snum> attribute of the student relation.Assume that the buffer size is large enough to store multiple paths of each B+ Tree but not an entire tree.(a) Consider Query 1 and Query 2 that retrieve the snum' s of students who havetaken ' DatabSyetems and ' Operating Systems '

21、, respectively, from the enrolled table. We know that Query 1 will be executed before Query 2, and both queries are executed using a file scan of the enrolled table.Which replacement policy would you recommend for the buffer manager to use to support this workload?(b) Now assume that we have retriev

22、ed the snum' s of students who have taken'Databaseystems' from the enrolled table. In the exact order of the retrievedsnum' s (not necessarily in sorted order),we then retrieve the nasmof thosestudents via repeated lookups in the B+ Tree on <snum>.For these repeated accesses to the index on student.snum, which replacement policy would you recommend for efficient buffer management?Query 1: select snum from student s, enrolled e where s.snum=e.snum and cname like ' DatabasSystems;Query 2: select snum from student s, enrolled e where s.snum=e.snum and cname like '

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论