新开发的数据库管理系统中,数据库管理员张工发现被用户频繁运行的某个查询处理程序使用了多个表的连接,产生这一问题的原因在于(49)。在保证该处理程序功能的前提下提高其执行效率,他应该(50)。

admin2006-03-15  29

问题 新开发的数据库管理系统中,数据库管理员张工发现被用户频繁运行的某个查询处理程序使用了多个表的连接,产生这一问题的原因在于(49)。在保证该处理程序功能的前提下提高其执行效率,他应该(50)。

选项 A、需求分析阶段对用户的信息要求和处理要求未完全掌握
B、概念结构设计不正确
C、逻辑结构设计阶段未能对关系模式分解到BCNF
D、物理设计阶段未能正确选择数据的存储结构

答案A

解析 本题考查应试者对数据库设计和数据库运行维护的掌握。题干某一程序的查询使用了多个表的连接,而这个查询又被频繁地执行,这必然会降低整个系统的性能。其原因在于多表连接查询是需要的时间和空间较多。在数据库设计的需求阶段,就应该对用户对信息的需求和处理的要求进行分析,并在随后的设计阶段进行解决和优化。最终出现这种情况是没有考虑到用户的处理需求频度(对频繁执行的查询没有优化),应选选项A;选项B中的概念结构设计只是对信息结构和处理的描述,与题干所述情况无关;选项C所指的模式分解只可能使表更多从而需要更多的连接,产生与题干所述相反;选项D所指的物理结构设计与多表连接无关。解决这一问题是优化的主要内容,可以在逻辑结构设计阶段进行优化(模式合并),也可在维护阶段进行表的合并,并修改应用程序,或在合并后的表上建立与合并前各关系模式相同结构的视图。选项A建立用户程序视图,在程序执行中仍需要将视图转换为基本表的合并,不能解决问题:选项B正确;选项C修改程序以减少使用的表不能保证查询的要求;选项D提到嵌套查询可以提高性能,但只限于非相关子查询,对相关子查询而言并不能提高性能。
转载请注明原文地址:https://jikaoti.com/ti/k1N7FFFM
0

相关试题推荐
最新回复(0)