2018年北京大学前沿交叉学科研究院907计算机专业基础之数据库系统概论考研仿真模拟五套题
● 摘要
一、简答题
1. 针对不同的故障,试给出恢复的策略和方法。(即如何进行事务故障的恢复,如何进行系统故障的恢复,以及如何进行介质故障的恢复。)
【答案】(1)事务故障的恢复是由DBMS 执行的。恢复步骤是自动完成的,对用户是透明的。具体过程是:
①反向扫描文件日志(即从后向前扫描日志文件),查找该事务的更新操作;
②对该事务的更新操作执行逆操作,即将日志记录中“更新前的值”写入数据库;
③继续反向扫描日志文件,做同样处理;
④如此处理下去,直至读到此事务的开始标记,该事务故障的恢复就完成了。
(2)系统故障的恢复操作是指撤销(UNDO )故障发生时未完成的事务,重做(REDO )已完成的事务。系统的恢复步骤是:
①正向扫描日志文件,找出在故障发生前已经提交的事务队列(REDO 队列)和未完成的事务队列(UNDO 队列);
②对撤销队列中的各个事务进行UNDO 处理;
③对重做队列中的各个事务进行REDO 处理。
(3)介质故障是最严重的一种故障。恢复方法是重装数据库,重做已完成的事务。具体过程是:
①DBA 装入最新的数据库后备副本(离故障发生时刻最近的转储副本),使数据库恢复到转储时的一致性状态;
②DBA 装入转储结束时刻的日志文件副本;
③DBA 启动系统恢复命令,由DBMS 完成恢复功能,即重做已完成的事务。
2. 试述内存数据库和硬件的相关性。哪些硬件技术影响内存数据库的性能?
【答案】(1)内存数据库和硬件的相关性:内存数据库的性能受硬件特性的直接影响。计算机硬件技术的发展主要体现在高端计算设备和存储设备上,如多核处理器、众核协处理器(Many Integrated Core,MIC )PCM 存储、通用GPU 、(Phase Change Memory, 相变存储)、固态硬盘(solid State Disk, SSD )存储等。这些计算能力和存储性能的提升有助于内存吞吐率需求的提升(众核技术)、提高内存持久存储能力(PCM 技术)或为内存提供二级存储(SSD 技术)。硬件技术在多核及众核处理器、高性能存储和高速网络等方面的发展为内存数据库提供了高并行处理、高性能存储访问以及高速连通的硬件平台。内存数据库的设计应该充分考虑并有效利用由新硬件技术带
来的功能扩展和性能提高。
(2)大容量内存、flash 、PCM 存储、多核CPU 、众核处理器、高性能网络传输等硬件技术的发展为内存数据库提供了良好的平台,直接影响到内存数据库的性能。
3. 试述网状模型的概念,举出三个网状模型的实例。
【答案】(1)满足下面两个条件的基本层次联系集合为网状模型。
①允许一个以上的结点无双亲;
②一个结点可以有多于一个的双亲。
(2)三个网状模型的实例;
①实例1:
图4
②实例2:
图5
③实例3:
图6
4. 内存数据库的特点有哪些?
【答案】内存是计算机存储体系结构中能够被程序可控访问(相对于硬件控制的cache )的最高层次,是能够提供大量数据存储的最快的存储层。内存数据库具有几个重要特性:
(1)高吞吐率和低访问延迟;
(2)并行处理能力;
(3)硬件相关性。
5. 试举出三个多值依赖的实例。
【答案】(1)关系模式MSC (M ,S ,C )中,M 表示专业,S 表示学生,C 表示该专业的必修课。假设每个专业有多个学生,有一组必修课。设同专业内所有学生选修的必修课相同,实例关系如下。按照语义对于M 的每一个值Mi , S 有一个完整的集合与之对应而不论C 取何值,所
以由于C 与S 的完全对称性,
必然有成立。
(2)关系模式ISA (I ,S ,A )中,I 表示学生兴趣小组,S 表示学生,A 表示某兴趣小组的活动项目。假设每个兴趣小组有多个学生,有若干活动项目。每个学生必须参加所在兴趣小组的所有活动项目,每个活动项目要求该兴趣小组的所有学生参加。按照语义有成立。
(3)上课(学号,教师工号,教室),一个学生可由多个教师来教,一个学生可在多教室上课,而且一个教师可在多个教室上课,一个教室可由多个教师上课。所以存在如下多值依赖
:
6. 什么是数据库管理系统?
【答案】数据库管理系统(DBMS )是操纵和管理数据库的一组软件,它是数据库系统(DBS )的重要组成部分。 不同的数据库系统都配有各自的DBMS ,而不同的DBMS 各支持一种数据库模型,虽然它们的功能强弱不同,但大多数DBMS 的构成相同,功能相似。一般说来,DBMS 具有定义、建立、维护和使用数据库的功能,它通 常由三部分构成:数据描述语言及其翻译程序、数据操纵语言及其处理程序和数据库管理的例行程序。
(1)数据描述语言
数据描述语言对应数据库系统的三级模式(外模式、概念模式和内模式)分别有3种不同DDL :
外模式DDL 、概念模式DDL 和内模式DDL , 它们是专门提供给DBA 使用的,一般用户不必关心。
①外模式DDL 是专门定义外视图的,外视图是用户观点的数据库描述,它是数据库的局部逻辑结构。
②概念模式DDL 是用来描述概念视图的专用语言。概念视图是数据库的全局逻辑结构,它包括数据库中所 有元素的名称、特征及其相互关系的描述,并包括数据的安全保密性和完整性以及存储安排、存取路径等信息。
③内模式DDL 是用来定义内视图的数据描述语言。内视图是从物理层中分离出来的,但不是物理视图。虽 然它有存储记录和块的概念,但它不受任何存储设备和设备规格(如柱面大小、磁道容量等)的限制。它包括对 存储记录类型、索引方法等方面的描述。
(2)数据操纵语言
DML 数据操纵语言是用户与DBMS 之间的接口,是用户用于存储、检索、维护数据库的工具。
由一组命令 语句组成,这些语句可分为4类。
①存储语句:用户使用存储语句向数据库中存放数据。系统给出新增数据库记录的数据库码,