2021-数据库系统原理试题.pdfVIP

  • 7
  • 0
  • 约1.53千字
  • 约 2页
  • 2022-07-05 发布于山东
  • 举报
2021-数据库系统原理试题 AOP (Aspect-Oriented Programming,面向方面编程),可以说是OOP (Object- Oriented Programing,面向对象编程)的补充和完善。OOP 引入封装、继承和多态性等概 念来建立一种对象层次结构,用以模拟公共行为的一个集合。当我们需要为分散的对象引 入公共行为的时候,OOP 则显得无能为力。也就是说,OOP 允许你定义从上到下的关系, 但并不适合定义从左到右的关系。例如日志功能。日志代码往往水平地散布在所有对象层 次中,而与它所散布到的对象的核心功能毫无关系。对于其他类型的代码,如安全性、异 常处理和透明的持续性也是如此。这种散布在各处的无关的代码被称为横切(cross- cutting)代码,在OOP 设计中,它导致了大量代码的重复,而不利于各个模块的重用。 而 AOP 技术则恰恰相反,它利用一种称为“横切”的技术,剖解开封装的对象内部, 并将那些影响了多个类的公共行为封装到一个可重用模块,并将其名为“Aspect”,即方 面。所谓“方面”,简单地说,就是将那些与业务无关,却为业务模块所共同调用的逻辑 或责任封装起来,便于减少系统的重复代码,降低模块间的耦合度,并有利于未来的可操 作性和可维护性。AOP 代表的是一个横向的关系,如果说“对象”是一个空心的圆柱体, 其中封装的是对象的属性和行为;那么面向方面编程的方法,就仿佛一把利刃,将这些空 心圆柱体剖开,以获得其内部的消息。而剖开的切面,也就是所谓的“方面”了。然后它 又以巧夺天功的妙手将这些剖开的切面复原,不留痕迹。 数据库系统原理试题 一、(10 分)针对下面的每种情况给出一个关系代数表达式和一个查询处理的例子: 1、 MRU 优于 LRU; 2、 LRU 优于 MRU; 二、(10 分) 1、既然索引可以加快查询处理速度,为什么不在多个搜索码上建立索引?给出尽可 能多的理由。 2、散列索引与B+树索引相比较有何优缺点? 三、(20 分) 设关系 r1 (A,B,C), r2(C,D,E)有如下特性:r1 有 20000 个元组,r2 有 45000 个元 组,一块中可容纳 25 条 r1 元组或 30 条 r2 元组。使用以下连接策略的每一种计算 r1 和 r2 的自然连接: 1、 嵌套循环连接; 2、 块嵌套循环连接; 3、 归并连接; 4、 散列连接。 估计每种方法所需的块存取数。 四、(15 分) 1、什么是可恢复调度?什么是无级联调度? 2、由于每一个冲突可串行化调度都是视图可串行化的,我们为什么强调冲突可串行 化而非视图可串行化呢? 3、补偿事务的目的是什么?给出使用补偿事务的一个例子。 五、(10 分) 用例子证明:存在在树型封锁协议下可行,而在两阶段封锁协议下不 可行的调度,反之亦然。 六、(10 分) 证明:存在满足两阶段封锁协议却不满足时间戳协议的调度,反之亦然。 七、(15 分) 解释检查点机制的目的。检查点的执行频率如何影响以下几个方面: 1、 没有故障 发生时系统的性能。 2、 从系统崩溃中恢复所占用的时间。 3、 从磁盘崩溃中恢复所占 用的时间。 八、(10 分) 查询优化的方法主要有几类?分别叙述每类方法的主要思想。 感谢您的阅读,祝您生活愉快。

文档评论(0)

1亿VIP精品文档

相关文档