(数据模型)
概述
数据模型是对现实世界数据特征的抽象,它描述了数据的结构、操作和约束条件,为数据库系统的信息表示与操作提供一个抽象的框架。数据模型所描述的内容通常包括数据结构、数据操作和数据约束。
数据模型可以根据其应用的场景和目的而有所不同。例如,概念模型(Conceptual Model)是从用户的角度对数据进行建模,主要用于数据库设计;逻辑模型(Logical Model)则是从计算机系统的角度对数据进行建模,主要用于DBMS的实现;物理模型(Physical Model)是对数据最底层的抽象,描述了数据在系统内部的表示方式和存取方法,是面向计算机系统的。
在数据模型中,数据的抽象程度越高,就越难以在计算机上实现,而数据的抽象程度越低,就越难以描述复杂的现实世界。因此,选择合适的数据模型对于提高数据的可理解性和可操作性非常重要。
概念
模型(Model):现实世界特征的模拟和抽象表达。
数据模型:描述数据库的结构和语义,对现实世界的数据进行抽象从现实世界的信息到数据库存储的数据以及用户使用的数据是一个逐步抽象过程,根据数据抽象的级别定义了四种模型:概念模型、逻辑模型和物理模型。
数据特征
数据的特征分为:
- 静态和动态两种特征
- 静态约束
- 动态操作
组成要素
数据模型组成要素包括数据结构、数据操作和数据约束。
-
数据结构: 描述的是系统的静态特征,即数据对象的数据类型、内容、属性以及数据对象之间的联系。
-
数据操作: 描述的是系统的动态特征。
-
数据约束: 描述数据结构中数据间的语法和语义关联。
分类
数据模型是模型化数据和信息的工具,也是数据库系统的核心和基础,可以分为概念模型、逻辑模型和物理模型。
概念层数据模型
概念层是数据抽象级别的最高层。概念层数据模型,也称为数据的概念模型或信息模型,这类模型主要用于数据库的设计阶段。
『信息世界涉及的基本概念』
- 实体(Entity)
- 属性(Attribute)
- 码或键(Key)
- 域(Domain)
- 实体型(Entity Type)
- 实体集(Entity Set)
- 联系(Relationship)
数据模型中有“型”和“值”两个概念:型是指表格中的表头;值是指型对应的具体数据。
概念模型的表示方法
- 实体型: 用矩形表示, 内写实体名
- 属性: 椭圆表示, 内写名称, 无向边连接相应实体
- 联系: 菱形表示, 内写名称, 无向边连接实体
概念模型的特点:
- 概念模型表达了数据的整体逻辑结构,它是系统用户对整个应用项目涉及的数据的全面描述。
- 概念模型是从用户需求的观点出发,对数据建模。
- 概念模型独立于硬件和软件。
- 概念模型是数据库设计人员与用户之间进行交流的工具。
逻辑层数据模型
逻辑层是数据抽象级别的中间层。逻辑层数据模型,也称为数据的逻辑模型。任何DBMS都是基于某种逻辑数据模型。
逻辑模型分类有四种:层次模型、网状模型、关系模型、面向对象模型。
层次模型:
是最早使用的一种数据模型(有向树)。有且仅有一个结点没有父节点,称作根节点;其他节点有且仅有一个父节点。
网状模型:
以网状结构(图)表示实体与实体间的联系。允许结点有多于一个父结点;可以有一个以上的结点没有父结点。
==关系模型:==
用二维表结构来表示实体间的联系。
优点:
- 建立在严格的数学概念的基础上
- 概念单一
- 存取路径对用户透明,有更高的数据独立性,更好的安全保密性
面向对象模型: 既是概念模型又是逻辑模型。表达能力丰富,对象可复用、维护方便。
逻辑模型的特点:
- 逻辑模型表达了DB的整体逻辑结构,但它是设计人员对整个应用项目数据库的全面描述。
- 逻辑模型是从数据库实现的观点出发,对数据建模。
- 逻辑模型独立于硬件,但依赖于软件(DBMS)。
- 逻辑模型是数据库设计人员与应用程序之间进行交流的工具。
物理层数据模型
物理层数据模型,也称为数据的物理模型,它又称为外部模型。是描述数据在存储介质上的组织结构,是逻辑模型的物理实现;它是数据库最底层的抽象;设计目标是提高数据库性能和有效利用存储空间。
物理模型的特点:
- 是逻辑模型的一个逻辑子集。
- 独立于硬件,依赖于软件。
- 反映了用户使用数据库的观点。