Q
题目
在数据库系统中,下列哪个映像关系用于提供数据与应用程序间的逻辑独立性?()
A、外模式/模式
B、模式/内模式
C、外模式/内模式
D、逻辑模式/内模式
A
答案
答案:A。
不同的DBMS在体系结构上通常都具有相同的特征,即采用三级模式结构并提供二级映像功能。数据库系统三级模式结构是数据库系统内部的体系结构,数据库系统的三级模式是指外模式、模式和内模式三部分。数据库系统的模式结构图如下图所示:
(1)外模式(External Schema)
外模式也称子模式(Subschema)或用户模式,它是数据库用户(包括应用程序员和最终用户)最终能够看见的和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图,是与某一应用有关的数据的逻辑表示。外模式面向具体的应用程序,它定义在模式之上,但独立于存储模式和存储设备。设计外模式时应充分考虑到应用的扩充性。外模式通常是模式的子集。一个数据库可以有多个外模式。外模式是保证数据库安全性的一个有力措施。
(2)模式(Schema)
模式也称逻辑模式,是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。它是数据库系统模式结构的中间层,既不涉及数据的物理存储细节和硬件环境,也与具体的应用程序、所使用的应用开发工具以及高级程序设计语言无关。模式是数据库的中心与关键,它独立于数据库的其他层次。设计数据库模式结构时应首先确定数据库的模式。模式实际上是数据库数据在逻辑级上的视图。一个数据库只有一个模式。数据库模式以某一种数据模型为基础,统一综合地考虑了所有用户的需求,并将这些需求有机地结合成一个逻辑整体。模式定义包括数据的逻辑结构定义、数据之间的联系定义以及安全性、完整性要求的定义。
(3)内模式(Internal Schema)
内模式也称存储模式(Storage Schema),一个数据库只有一个内模式,它是数据物理结构和存储方式的描述,是数据在数据库内部的表示方式。内模式依赖于它的全局逻辑结构,但独立于数据库的用户视图即外模式,也独立于具体的存储设备。例如,记录的存储方式是顺序存储、按照B树结构存储还是按HASH方法存储;索引按照什么方式组织;数据是否压缩存储,是否加密;数据的存储记录结构有何规定等。
数据库系统的三级模式是对数据的三个抽象级别,它把数据的具体组织留给DBMS管理,使用户能逻辑抽象地处理数据,而不必关心数据在计算机中的表示和存储。为了能够在内部实现这三个抽象层次的联系和转换,数据库系统在这三级模式之间提供了二级映像:外模式/模式映像和模式/内模式映像。正是这两层映像保证了数据库系统中的数据能够具有较高的逻辑独立性和物理独立性。
(一)外模式/模式
对于每一个外模式,数据库系统都有一个外模式/模式映像,它定义了该外模式与模式之间的对应关系(这些映像定义通常包含在各自外模式的描述中)。当模式改变时(例如增加新的关系、新的属性、改变属性的数据类型等),DBA对各个外模式/模式的映像作相应改变,可以使外模式保持不变。这体现了数据的逻辑独立性。
(二)模式/内模式
一个数据库系统存在一个唯一的模式/内模式映像,它定义了数据库全局逻辑结构与存储结构之间的对应关系(该映像定义通常包含在模式描述中)。例如,说明逻辑记录和字段在内部是如何表示的。
当数据库的存储结构改变了(例如选用了另一种存储结构),由DBA对模式/内模式映像作相应改变,可以使模式保持不变。这体现了数据的物理独立性。
三级模式和二级映像有如下的优点:
l数据库的二级映像保证了数据库外模式的稳定性,从而从底层保证了应用程序的稳定性。
l数据和程序之间的独立性使得数据的定义和描述可以从应用程序中分离出去。另外,由于数据的存取由DBMS管理,用户不必考虑存取路径等细节从而简化了应用程序的编制,大大减少了应用程序的维护和修改。
领取专属 10元无门槛券
私享最新 技术干货