数据库外映象
1. 数据库系统的结构模式是什么
人们为数据库设计了一个严谨的体系结构,数据库领域公认的标准结构是三级模式结构,它包括外模式、概念模式、内模式,有效地组织、管理数据,提高了数据库的逻辑独立性和物理独立性。用户级对应外模式,概念级对应概念模式,物理级对应内模式,使不同级别的用户对数据库形成不同的视图。所谓视图,就是指观察、认识和理解数据的范围、角度和方法,是数据库在用户"眼中"的反映,很显然,不同层次(级别)用户所"看到"的数据库是不相同的。
外模式,外模式又称子模式或用户模式,对应于用户级。它是某个或某几个用户所看到的数据库的数据视图,是与某一应用有关的数据的逻辑表示。外模式是从模式导出的一个子集,包含模式中允许特定用户使用的那部分数据。用户可以通过外模式描述语言来描述、定义对应于用户的数据记录(外模式),也可以利用数据操纵语言(Data Manipulation Language,DML)对这些数据记录进行操作。外模式反映了数据库的用户观。
概念模式,模式又称概念模式或逻辑模式,对应于概念级。它是由数据库设计者综合所有用户的数据,按照统一的观点构造的全局逻辑结构,是对数据库中全部数据的逻辑结构和特征的总体描述,是所有用户的公共数据视图(全局视图)。它是由数据库管理系统提供的数据模式描述语言(Data Description Language,DDL)来描述、定义的,体现、反映了数据库系统的整体观。内模式,内模式又称存储模式,对应于物理级,它是数据库中全体数据的内部表示或底层描述,是数据库最低一级的逻辑描述,它描述了数据在存储介质上的存储方式和物理结构,对应着实际存储在外存储介质上的数据库。内模式由内模式描述语言来描述、定义,它是数据库的存储观。
2. 数据库的三级模式和二级映像
一、数据库的三级模式:
1、模式
模式是由数据库设计者总和所有用户的数据,按照统一的观点构造的全局逻辑结构,是对数据库中全部数据的逻辑结构和特征的总体描述,是所有用户的公共数据视图。
2、外模式
外模式对应于用户级,它是某个或某几个用户看到的数据库的数据视图,是与某一应用有关的数据逻辑的表示。外模式是从模式导出的一个子集,包含模式中允许特定用户使用的那部分数据。
3、内模式
内模式对应于物理级,它是数据库中全部数据的内部表示或底层描述,是数据库最低一级的逻辑描述,它描述了数据在存储介质上存储方式的物理结构,对应着实际存储在外存储介质上的数据库。
二、数据库的二级映像:
数据库系统的三级模式是对数据的3个抽象,它把数据的具体组织留给DBMS管理,为了能够在内部实现着3个抽象层次的练习和转换,DBMS在这3个级别之间提供了两层映像:外模式/模式映像和模式/内模式映像。
1、外模式/模式映像使数据具有较高的逻辑独立性。它定义了外模式和模式之间的对应关系。这些映像定义通常包含在各自外模式的描述。
2、模式/内模式映像使数据具有较高的物理独立性。它定义了数据库全局逻辑结构与存储结构之间的对应关系。该映像定义通常包含在模式描述中。
(2)数据库外映象扩展阅读:
数据库的三级模式和二级映像的特性:
1、中间模式(概念模式)相对稳定的反映数据的结构和属性关系,是DB的关键和中心,全局的逻辑结构,独立于其他层次,故设计DB模式结构时应先确定DB逻辑模式。
2、模式的实例是动态反映数据的时效性。定义模式时要考虑逻辑结构,还要考虑数据的联系,考虑数据的安全性完整性。
3、内模式独立于用户视图(外模式),依赖全局逻辑结构(模式),组织存储数据实现存储时提高空间和时间效率。
4、外模式特定应用程序是在外模式数据结构上编制的,依赖于外模式,独立于模式和内模式,不同的应用可以公用一个外模式。
5、二级映像保证DB外模式稳定性,是在底层保证应用程序稳定性,除非应用自身变化,否则不会修改。
3. 数据库系统的二级映象与数据独立性之间有什么关系
数据库系统的二级映象与数据独立性之间关系:
数据库管理系统数据独立性在这三级模式之间提供了两层映象:
外模式/模式映象
模式/内模式映象
正是这两层映象保证了数据库系统中的数据能够具有较高的逻辑独立性和物理独立性。
(1)外模式/模式映象
模式描述的是数据的全局逻辑结构.外模式描述的是数据的局部逻辑结构。对应于同一个模式可以有任意多个外模式。对于每一个外模式,数据库系统都有一个外模式/模式映象,它定义了该外模式与模式之间的对应关系。这些映象定义通常包含在各自外模式的描述中。
当模式改变(如增加新的关系、新的属性、改变属性的数据类型等)时,由数据库管理员对各个外模式/模式的映象作相应改变,可以使外模式保持不变。应用程序是依据数据的外模式编写的,从而应用程序不必修改,保证了数据与程序的逻辑独立性,简称为数据的逻辑独立性。
(2)模式/内模式映象
数据库中只有一个模式,也只有一个内模式,所以模式/内模式映象是唯一的,它定义了数据库全局逻辑结构与存储结构之间的对应关系。例如,说明逻辑记录和字段在内部是如何表示的。该映象定义通常包含在模式描述中。当数据库的存储结构改变了(如选用了另一种存储结构),由数据库管理员对模式/内模式映象作相应改变,可以使模式保持不变,从而应用程序也不必改变。保证了数据与程序的物理独立性,简称数据的物理独立性。
在数据库的三级模式结构中,数据库模式即全局逻辑结构是数据库的中心与关键,它独立于数据库的其他层次。因此设计数据库模式结构时应首先确定数据库的逻辑模式。
数据库的内模式依赖于它的全局逻辑结构,但独立于数据库的用户视图即外模式,也独立于具体的存储设备。它是将全局逻辑结构中所定义的数据结构及其联系按照一定的物理存储策略进行组织,以达到较好的时间与空间效率。
数据库的外模式面向具体的应用程序,它定义在逻辑模式之上,但独立于存储模式和存储设备。当应用需求发生较大变化,相应外模式不能满足其视图要求时,该外模式必须做相应改动,所以设计外模式时应充分考虑到应用的扩充性。
特定的应用程序是在外模式描述的数据结构上编制的,它依赖于特定的外模式,与数据库的模式和存储结构独立。不同的应用程序有时可以共用同一个外模式。数据库的二级映象保证了数据库外模式的稳定性,从而从底层保证了应用程序的稳定性,除非应用需求本身发生变化,否则应用程序一般不需要修改.
数据与程序之间的独立性,使得数据的定义和描述可以从应用程序中分离出去。另外,由于数据的存取由DBMS管理,用户不必考虑存取路径等细节,从而简化了应用程序的编制,大大减少了应用程序的维护和修改。
4. 数据库体系结构中的三级结构、两级映象是什么
一、三级模式结构
1、外模式(子模式,用户模式)——对应于视图和基本表,位于最外层。
一般是模式的子集,一个数据库可以有多个外模式。概念模式的某一部分的抽象表示。
2、模式(逻辑模式,概念模式)——基本表。
数据库中全体数据逻辑结构和特征的描述,处于中间层。
一个数据库只有一个模式,是数据库的整体逻辑。
整个数据库的实际存储的抽象表示。
3、内模式(存储模式)——存储文件
最内内层。一个数据库只能有一个内模式。
是数据库的实际存储表示。
二、两级映象
为实现这三个抽象级别的联系和转换,DBMS在级级结构之间提供两个层次的映象:外模式/模式映象,模式/内模式映象。
可参考
http://www.docin.com/p-238371925.html
5. 如何理解数据库的三级模式二级映射
三级模式是对数据库的结构的三个抽象级别:外模式(用户模式)、模式(逻辑模式)、内模式(存储模式);二级映象是在DBMS内部实现这三个抽象层次的联系和转换。
二级映象:外模式/模式映象:定义外模式与模式之间的对应关系。每一个外模式对应一个映像,映象定义(外模式与模式之间对应关系)包含在各自外模式的描述中即呈现给用户的视图中。用途是:保证数据逻辑独立性ex.模式变了,修改外模式/模式映象映像即可,不会影响应用程序。
模式/内模式映象:定义数据全局逻辑结构与储存结构的对应关系。一个数据库只有一个此映象。映象定义包含在模式描述中。
三级模式各模式解析
1、外模式:(一个应用只能对应一个外模式,一个外模式可对应多个应用)是对应用程序需要的数据的逻辑结构、特征的描述,以视图的方式呈现给应用程序使用者(用户)。外模式是模式的子集,且外模式之间可以有交叉的部分。
外模式的作用:简化了数据,用户可以只看自己想看的数据; 保障了数据库的安全性,不同的用户拥有的权限不一样,只能看到他有授权的部分。
2、模式:(一个数据库只有一个模式,模式是数据的逻辑结构)是对数据库中全体数据的逻辑结构(数据项的名字、类型、取值范围等)和特征的描述。
有着所有用户的公共数据视图,展示了有什么数据以及数据间的关系;提出了有关数据的安全性和完整性的要求,以确保用户可以安全地、有效地、正确地使用这个共享数据资源。
3、内模式:是数据库内部的表示:数据存储方式、索引组织方式、数据是否加密、是否压缩、存储记录结构的规定。
6. 数据库系统的独立性是怎样实现的
数据独立性是由DBMS的二级映象功能来保证的。数据库系统通常采用外模式、模式和内模式三级结构,数据库管理系统在这三级模式之间提供了外模式/模式和模式/内模式两层映象。
当整个系统要求改变模式时(增加记录类型、增加数据项)时,由DBMS对各个外模式/模式的映象作相应改变,可以使外模式保持不变,应用程序是依据数据的外模式编写的,从而应用程序不必修改,保证了数据的逻辑独立性。
当数据的存储结构改变时,由DBMS对模式/内模式映象作相应改变,可以使模式不变,从而应用程序也不必改变,保证了数据的物理独立性。
(6)数据库外映象扩展阅读
数据独立性的作用
1、数据与程序的独立
把数据的定义从程序中分离出去,加上数据的存取又由DBMS负责,从而简化了应用程序的编制,大大减少了应用程序的维护和修改。可以说数据处理的发展史就是数据独立性不断进化的历史。在手工管理阶段,数据和程序完全交织在一起,没有独立性可言,数据结构作任何改动,应用程序也需要做相应的修改。
2、独立发展
文件系统出现后,虽然将两者分离,但实际上应用程序中依然要反映文件在存储设备上的组织方法、存取方法等物理细节,因而只要数据作了任何修改,程序仍然需要作改动。而数据库系统的一个重要目标就是要使程序和数据真正分离,使它们能独立发展。