圣才电子书www.100xuexi.com十万种考研考证电子书、题库视频学习平台第9章关系查询处理和查询优化1.试述查询优化在关系数据库系统中的重要性和可能性。答:查询优化在关系数据库系统中的重要性:关系系统的查询优化既是RDBMS实现的关键技术,又是关系系统的优点所在。它减轻了用户选择存取路径的负担。用户只要提出“干什么”,不必考虑如何最好地表达查询以获取较好的效率,而且系统可以比用户程序的“优化”做得更好。查询优化在关系数据库系统中的可能性:(1)优化器可以从数据字典中获取许多统计信息,例如关系中的元组数、关系中每个属性的分布情况、这些属性上是否有索引(B+树索引、HASH索引、唯一索引或组合索引)等。优化器可以根据这些信息选择有效的执行计划,而用户程序则难以获得这些信息。(2)如果数据库的物理统计信息改变了,系统可以自动对查询进行重新优化以选择相适应的执行计划。在非关系系统中必须重写程序,而重写程序在实际应用中往往是不太可能的。(3)优化器可以考虑数十甚至数百种不同的执行计划,从中选出较优的一个,而程序员一般只能考虑有限的几种可能性。(4)优化器中包括了很多复杂的技术,这些优化技术往往只有最好的程序员才能掌握。系统的自动优化相当于使得所有人都拥有这些优化技术。2.对学生-课程数据库有如下的查询:1/33圣才电子书www.100xuexi.com十万种考研考证电子书、题库视频学习平台此查询要求信息系学生选修了的所有课程名称。试画出用关系代数表示的语法树,并用关系代数表达式优化算法对原始的语法树进行优化处理,画出优化后的标准语法树。答:学生-课程数据库用关系代数表示的语法树如图9-1所示:图9-1优化后的标准语法树如图9-2所示:关系代数语法树2/33圣才电子书www.100xuexi.com十万种考研考证电子书、题库视频学习平台图9-2优化后的语法树3.试述RDBMS查询优化的一般准则。答:下面的优化策略一般能提高查询效率:(1)选择运算应尽可能先做;(2)投影运算和选择运算同时进行;(3)投影同其前或其后的双目运算结合起来;(4)某些选择同在它前面要执行的笛卡尔积结合起来成为一个连接运算;(5)找出公共子表达式;(6)选取合适的连接算法。4.试述RDBMS查询优化的一般步骤。3/33圣才电子书www.100xuexi.com十万种考研考证电子书、题库视频学习平台答:各个关系系统的优化方法不尽相同,大致的步骤可以归纳如下:(l)把查询转换成某种内部表示,通常用的内部表示是语法树。(2)把语法树转换成标准(优化)形式,即利用优化算法,把原始的语法树转换成优化的形式。(3)选择低层的存取路径。(4)生成查询计划,选择代价最小的。4/33圣才电子书www.100xuexi.com十万种考研考证电子书、题库视频学习平台第10章数据库恢复技术1.试述事务的概念及事务的四个特性。恢复技术能保证事务的哪些特性?答:(1)事务是用户定义的一个数据库操作序列,是一个不可分割的工作单位。事务具有4个特性:原子性、一致性、隔离性和持续性。这4个特性也简称为ACID特性。①原子性:事务是数据库的逻辑工作单位,事务中的操作要么都做,要么都不做。②一致性:事务执行的结果必须是使数据库从一个一致性状态变到另一个一致性状态。当数据库只包含成功事务提交的结果时,就说数据库处于一致性状态。③隔离性:一个事务的执行不能被其他事务干扰,即一个事务内部的操作及使用的数据对其他并发事务是隔离的,并发执行的各个事务之间不能互相干扰。④持续性:持续性指一个事务一旦提交,它对数据库中数据的改变就应该是永久性的,接下来的其他操作或故障不应该对其执行结果有任何影响。(2)恢复技术保证了事务的原子性、一致性和持续性。2.为什么事务非正常结束时会影响数据库数据的正确性?请举例说明。答:事务执行的结果必须是使数据库从一个一致性状态变到另一个一致性状态。如果数据库系统运行中发生故障,有些事务尚未完成就被迫中断,这些未完成事务对数据库所做的修改有一部分已写入物理数据库,这时数据库就处于一种不正确的状态,或者说是不一致的状态。例如某工厂的库存管理系统中,要把数量为Q的某种零件从仓库1移到仓库2存放。则可以定义一个事务T,T包括两个操作:Q1=Q1-Q,Q2=Q2+Q。如果T非正常终止时只做了第一个操作,则数据库就处于不一致性状态,库存量无缘无故少了Q。5/33
好文档 - 专业文书写作范文服务资料分享网站