21/7/22 读书笔记 模型简介 三级模式与二级映像


21/7/22 读书笔记

数据库系统概论 概念模型

概念模型是将现实世界反映到机器世界的第一层抽象,其描述了解决问题所需的数据模型所应有的结构。概念模型一方面需要能够有语义表达能力,直观表达出应用程序中所需的语义概念,另一方面需要通俗简单,方便人理解。

概念模型中的基本概念包括:

  • 实体:我们称客观存在并可区分的事物是实体。一个实际存在的事物可以是实体,比如学生;一个抽象的概念也可以是实体,比如学生选课这一行为。实体的重点在于可区分与可归类。
  • 属性:实体的某一特性。实体的本质就是属性的集合。
  • 码:实体的唯一标识。
  • 实体间的联系:我们称同一类型的实体组成一个实体集,实体间的联系通常是指实体集间的联系

举个例子,我们为了设计一个学生成绩管理系统,那么就涉及对“学生”进行建模,而“学生”这一概念既包含对需求有用的属性(比如年级、成绩),也具有与需求无关的属性(比如性别),因此我们对“学生”的概念模型可以被描述为学生(学号,姓名,成绩),而忽略无关属性。

数据库系统概论 数据模型

数据模型比概念模型更为接近机器世界,其中定义了一组概念,这组概念需要精确地描述系统的静态特性、动态特性、完整性约束条件。相对应地,数据模型由数据结构、数据操作、数据的完整性约束条件构造。一般来说,不同的数据模型之间的本质区别在于数据结构

  • 数据结构描述了数据库对象及其之间的联系是如何进行构造的,其由所描述的对象类型的集合组成,是对系统静态特性的描述。
  • 数据操作描述了在数据结构上允许执行操作的集合。操作的目的具有统一性,比如查询、更新;操作的行为具有异构性,比如在树状结构中查询与在图结构中查询的具体行为不同。
  • 数据的完整性约束条件规定了该数据模型下数据必须遵守的基本约束,这种约束既有数据模型本身的制约(比如关系模型对实体完整性和参照完整性的要求),也有具体情境下的制约(比如年龄不能小于0)。

以下初步地简要介绍三种常用的数据模型

  • 层次模型:利用作为数据结构;一个父结点与多个子女节点构造一对多的关系;较难模拟非层次的关系,比如多对多。
  • 网状模型:利用作为数据结构;每条边支持一对多的关系,利用连接记录实现多对多的关系;结构和使用较为复杂,不利于理解与拓展。
  • 关系模型:采用二维表来描述数据,其具体的数据结构建立在严格的数学概念上;对实体完整性、参照完整性、用户定义的完整性有约束性要求;存取过程对用户透明。
    • 关系在形式上表现为二维表,关系模型中操作对象和操作结果都是关系。

数据库系统概论 三级模式与二级映像

数据库系统即使类型多种多样,但是在内部的系统结构上基本一致,均为三级模式结构:外模式、模式、内模式。

数据库系统的核心在于模式(schema),其描述了数据库的整体逻辑结构,以对应的数据模型为基础描述了所有数据之间的关联情况。模式与具体的物理存储形式无关,与具体应用程序无关,可以视作中间层。一个数据库系统只有一个模式

外模式是模式对数据库用户(也就是应用程序)所展示的视图,通常是模式的一个子集,并且根据应用程序需求改变了数据结构、类型、长度、保密级别。一个数据库系统可以有多个外模式,一个外模式又能服务多个应用程序,一个应用程序原则上只使用一个外模式。外模式的意义在于将具有全局性的模式与多个用户相隔离,每个或每组用户独享一种数据的局部视图,而隐藏全局的模式。

内模式是模式在物理层面上具体的存储形式,比如数据是否压缩、数据是否能跨物理页存储、数据索引以什么方式组织等。一个数据库系统只有一个内模式。内模式的意义在于将模式汇总的逻辑结构按一定物理策略进行组织,使得访问与存取的时间与空间效率最大。

二级映像分别指外模式/模式映像和模式/内模式映像:

  • 外模式/模式映像:一个模式对应多个外模式。当应用需求发生改变,只需要新增一个外模式,并建立相应的外模式/模式映像即可。当模式本身发生改变,则修改所有的外模式/模式映像,具体的应用程序不需要改变。该映像保证了数据的逻辑独立性
  • 模式/内模式映像:一个模式只有一个内模式,因此模式/内模式映像是唯一的。当数据库的物理存储方式发生改变,只需要修改模式/内模式映像,就能保持模式不变。该映像保证了数据的物理独立性

特定的应用程序依赖于外模式所表现的数据结构,其定义在逻辑结构上,但是与数据库内部全局的模式中的逻辑结构相独立,更独立于实际的物理存储结构,从而保证了应用程序的稳定性不会因为数据库的改变而被破坏。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM