您好、欢迎来到现金彩票网!
当前位置:2019欢乐棋牌 > 子模式 >

数据库的三级模式和二级映像

发布时间:2019-07-21 01:13 来源:未知 编辑:admin

  可选中1个或多个下面的关键词,搜索相关资料。也可直接点“搜索资料”搜索整个问题。

  1、模式(逻辑模式、概念模式):实际上是数据库数据在逻辑级上的视图。描述的是全局逻辑结构。一个数据库只要一个模式。模式是数据库的中心与关键,它独立与其他层次。设计数据库模式结构时应首先确定数据库的逻辑模式。DBMS提供模式描述性语言来严格定义模式。

  2、外模式(子模式、用户模式):数据库用户能够看见和使用的局部数据的逻辑结构和特征,是数据库用户的数据视图。描述的是局部逻辑结构。是模式的一个子集。一个数据库可以有多个数据库内模式。每个用户只能看见和访问对应的外模式中的数据,数据库中的其余数据是不可见的。

  是保证数据库安全性的有力措施。同一外模式也可以为用户的多个应用程序使用,但一个应用程序只能使用一个外模式。它定义在逻辑模式之上,但独立于存储模式和存储设备。当应用需求发生较大变化,相应外模式不能满足其视图要求,该外模式就应该做出相应的改变。

  设计外模式的时候应充分考虑到应用的扩展性。DBMS提供子模式描述性语言来严格定义子模式。

  3、内模式(存储模式):一个数据库只有一个内模式。它是数据物理结构和存储方式的描述,是数据库内部的表示方法。比如记录什么存储方法存储,索引按照什么方式组织。数据是否压缩存储,是否加密。数据库存储记录结构有何规定。

  它依赖于全局逻辑结构,但独立于数据库的用户视图和存储设备。它将全局逻辑结构中所定义的数据结构及其联系按照一定的物理存储策略进行组织,以实现达到较好的时间与空间效率的目的。DBMS提供内模式描述性语言来严格定义内模式。

  1、外模式/模式映像:数据库系统都有一个外模式/模式映像。它定义了该外模式与模式之间的对应关系。这些映像通常包含在各自外模式的描述中。

  当模式改变时(增加新的关系、新的属性、改变属性的数据类型),需要数据库管理员对各个外模式/模式的映像做相应改变,也可以是外模式保持不变。应用程式是依据数据的外模式编写的。因此应用程序也不必修改,这保证了数据与程序的逻辑独立性,简称数据的逻辑独立性。

  2、模式/内模式映像:模式/内模式映像是唯一的,它定义了数据全局逻辑结构与存储结构之间的对应关系。比如说明逻辑记录和字段在内部是如何表示。

  该映像定义通常包含在模式描述中。当数据库的存储结构改变时,由数据库管理员对模式/内模式映像做相应改变。可以使模式保持不变,因此应用程序也不必改变,这就保证了数据与程序的物理独立性,简称数据的物理独立性。

  数据库的三级模式是数据库在三个级别 (层次)上的抽象,使用户能够逻辑地、抽象地处理数据而不必关心数据在计算机中的物理表示和存储。

  实际上 ,对于一个数据库系统而言一有物理级数据库是客观存在的,它是进行数据库操作的基础,概念级数据库中不过是物理数据库的一种逻辑的、抽象的描述(即模式),用户级数据库则是用户与数据库的接口,它是概念级数据库的一个子集(外模式)。

  用户应用程序根据外模式进行数据操作,通过外模式一模式映射,定义和建立某个外模式与模式间的对应关系,将外模式与模式联系起来,当模式发生改变时,只要改变其映射,就可以使外模式保持不变,对应的应用程序也可保持不变;

  另一方面,通过模式一内模式映射,定义建立数据的逻辑结构(模式)与存储结构(内模式)间的对应关系,当数据的存储结构发生变化时,只需改变模式一内模式映射,就能保持模式不变,因此应用程序也可以保持不变。

  一、数据库的三级模式结构是指:数据库系统是由外模式、模式和内模式三级构成,如图:

  1、模式(Schema)模式也称为:逻辑模式,它是DB中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。

  模式层是数据库模式结构的中间层,既不涉及到数据的物理存储细节和硬件环境,也与具体的应用程序、应用开发工具以及高级程序设计语言无关(C、C++、JAVA等)。

  实际工作中,模式就等同于程序员创建一个具体的数据库的全部操作,如:这是一个MySQL数据库,有2张表,每个表的名字,属性的名字、类型、取值范围,主键,外键,索引,其他完整性约束等等。

  外模式也称为:子模式(subschema)/用户模式,它是数据库用户(应用程序员、最终用户)能够看到的使用的局部数据的逻辑结构和特征的描述,是数据库的数据视图,是与某一个应用有关的数据的逻辑表示。

  外模式通常是模式的子集。一个数据库可以有多个外模式。同一个外模式可以为某一用户的多个应用系统所使用,但一个应用系统只能使用一个外模式。

  外模式是保证数据库安全性的一个有力措施。每个用户只能看见和访问所对应的外模式中的数据,数据库中的其余数据是不可见的。

  内模式也称为:存储模式(Storage schema),一个数据库只有一个内模式。它是数据库物理结构和存储方式的描述,是数据在数据库内部的表示方式。

  如:记录的存储方式是堆存储,还是按照某些属性值的升(降)存储,还是按照属性值聚簇(cluster)存储;索引按照什么方式组织,是B+树索引,还是hash索引等等。

  DBMS提供内模式描述语言(内模式DDL/存储模式DDL)来严格定义内模式。

  二、数据库的3级模式是对数据的3个抽象级别。它使得用户能够逻辑地抽象地处理数据,而不必再去关心数据在计算机中的具体表示方式与存储方式。

  实际上,为了能够实现在这3个抽象层次之间的联系和转换,DBMS在这三级模式之间设计了两层映像:

  所以,对于每一个外模式,数据库系统都有一个外模式/模式映像,它定义了这个外模式与模式的对应关系。外模式的描述中通常包含了这些映像的定义。

  当模式改变时(增加新的关系、新的属性、改变属性的数据类型等),由数据库管理员对各个外模式/模式映像作相应的改变,可以使得外模式保持不变。而又由于应用程序应该是依据外模式编写的,从而应用程序不必修改,这就保证了数据与程序的逻辑独立性。

  总结:外模式/模式映像保证了当模式改变时,外模式不用变 — 逻辑独立性。

  由上可知:一个DB只有一个模式,也只有一个内模式,所有模式/内模式映像是唯一的,它定义了数据全局逻辑结构与存储结构之间的对应关系。

  当数据库的存储结构改变时(例如选用了另一个存储结构),由数据库管理员对模式/内模式映像作出相应的改变,可以使得模式保持不变,从而应用程序也不必改变。这就保证了数据和程序的物理独立性。

  总结:模式/内模式映像保证了当内模式改变时,模式不用变 — 物理独立性。

  三级模式是数据库系统通常采用的结构,但这并不意味着你必须按照三级模式结构设想的那样来编程。这是因为,各种类型数据库(层次、网状、关系)和各个具体数据库对三级模式的提供的支持是不完善和不一致的。

  可以看到三级模式都是DDL(Data Definition language)来定义的,那么在RDBMS中三种模式的定义都包含在可以使用的DDL语句中:

  当然视图提供的也只是一定程度的数据逻辑独立性。因为对于视图的更新是有条件的,因此当应用程序有需要修改数据的语句时,仍然不得不去操作基本表。所以如果基本表改变了,那么应用程序还是要变…

  模式就是基本表,但我觉得除了视图和索引组织方式等等之外都是模式的范围。表、字段、索引、存储过程、触发器等等

  内模式是存储文件,但存储文件的存储方式和结构可以被定义,这一部分能操作的情况比较少,举一个例子如MySQL中创建table并且制定使用MEMORY引擎、使用hash索引。

  二、两级映像只是在系统设计层面上,在每一个模式上保证了它底层模式(地基)的稳定性。就如描述的那样:模式变了外模式不用变,内模式变了模式不用变。

  但是,一定要记住两级映像仅仅是也只能是在系统理论设计层面上的保证,如果你应用需求本身发生变化了那可能什么都需要改变。

  模式是由数据库设计者总和所有用户的数据,按照统一的观点构造的全局逻辑结构,是对数据库中全部数据的逻辑结构和特征的总体描述,是所有用户的公共数据视图。

  外模式对应于用户级,它是某个或某几个用户看到的数据库的数据视图,是与某一应用有关的数据逻辑的表示。外模式是从模式导出的一个子集,包含模式中允许特定用户使用的那部分数据。

  内模式对应于物理级,它是数据库中全部数据的内部表示或底层描述,是数据库最低一级的逻辑描述,它描述了数据在存储介质上存储方式的物理结构,对应着实际存储在外存储介质上的数据库。

  数据库系统的三级模式是对数据的3个抽象,它把数据的具体组织留给DBMS管理,为了能够在内部实现着3个抽象层次的练习和转换,DBMS在这3个级别之间提供了两层映像:外模式/模式映像和模式/内模式映像。

  1、外模式/模式映像使数据具有较高的逻辑独立性。它定义了外模式和模式之间的对应关系。这些映像定义通常包含在各自外模式的描述。

  2、模式/内模式映像使数据具有较高的物理独立性。它定义了数据库全局逻辑结构与存储结构之间的对应关系。该映像定义通常包含在模式描述中。

  1、中间模式(概念模式)相对稳定的反映数据的结构和属性关系,是DB的关键和中心,全局的逻辑结构,独立于其他层次,故设计DB模式结构时应先确定DB逻辑模式。

  2、模式的实例是动态反映数据的时效性。定义模式时要考虑逻辑结构,还要考虑数据的联系,考虑数据的安全性完整性。

  3、内模式独立于用户视图(外模式),依赖全局逻辑结构(模式),组织存储数据实现存储时提高空间和时间效率。

  4、外模式特定应用程序是在外模式数据结构上编制的,依赖于外模式,独立于模式和内模式,不同的应用可以公用一个外模式。

  5、二级映像保证DB外模式稳定性,是在底层保证应用程序稳定性,除非应用自身变化,否则不会修改。

  定义:也称逻辑模式,是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。

  ④ 定义模式时不仅要定义数据的逻辑结构(如数据记录由哪些数据项构成,数据项的名字、类型、取值范围等),而且要定义与数据有关的安全性、完整性要求,定义这些数据之间的联系。

  定义:也称子模式(Subschema)或用户模式,是数据库用户(包括应用程序员和最终用户)能够看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图,是与某一应用有关的数据的逻辑表示。

  定义:也称存储模式(Storage Schema),它是数据物理结构和存储方式的描述,是数据在数据库内部的表示方式(例如,记录的存储方式是顺序存储、按照B树结构存储还是按hash方法存储;索引按照什么方式组织;数据是否压缩存储,是否加密;数据的存储记录结构有何规定)。

  为了有效地组织、管理数据,提高数据库的逻辑独立性和物理独立性,人们为数据库设计了一个严谨的体系结构,数据库领域公认的标准结构是三级模式结构,它包括外模式、模式和内模式。为保证数据数据库系统中有较高的逻辑独立性和物理独立性,数据库管理系统在在这三个模式之间提供了两层映像,即:外模式/模式映像、模式/内模式映像。

http://halsoankan.com/zimoshi/365.html
锟斤拷锟斤拷锟斤拷QQ微锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷微锟斤拷
关于我们|联系我们|版权声明|网站地图|
Copyright © 2002-2019 现金彩票 版权所有