1.4 数据模型
1.4.1 数据模型的概念
模型是现实世界特征的抽象与模拟。模型可分为实物模型和抽象模型。建筑模型、汽车模型等都是实物模型,它们是客观事物的某些外观特征或内在功能的模拟与刻画。而数学模型是一种抽象模型,如公式 2s=πr,抽象了圆面积与半径之间的数量关系,揭示了客观事物的固有规律。
数据模型(Data Model)是一种抽象模型,是对现实世界数据特征的抽象。引入数据模型是非常必要的。数据库系统是为部门和企业服务的一个计算机系统,而计算机在处理数据时,必须将部门或企业的有关情况的某些特征抽象为计算机能够处理的数据格式,这种数据格式就是数据模型。数据模型为数据库系统的信息表示和操作提供必须的抽象框架。计算机上实现的各种数据库管理系统都必须基于某种确定的数据模型。因此,数据模型是数据库系统的灵魂,理解和掌握数据模型是学习数据库技术与理论的基础。
数据模型的选择应满足三方面要求:① 能较真实地模拟现实世界;② 易于理解;③ 便于在计算机上实现。然而用一种模型同时满足上述要求是较困难的,因此,在数据库系统中一般是针对不同对象和应用目的采用不同的数据模型。通常,根据实际问题的需要和应用目的的不同,有三种层面上的数据模型,如图1.12所示。
图1.12 数据抽象过程
(1)概念数据模型(Conceptual Data Model),也称概念模型或信息模型。它是面向用户的模型,是现实世界到机器世界的一个中间层次。其基本特征是按用户观点对信息进行建模,与具体DBMS无关。概念模型的作用和意义在于描述现实世界的概念化结构,使数据库设计人员在设计的初始阶段能够摆脱计算机系统和DBMS具体技术的约束,集中精力分析数据及其联系。最常用的概念模型是实体-联系(E-R)模型。
(2)逻辑数据模型(Logical Data Model),也称结构数据模型,其特征是按计算机系统的观点对数据建模,服务于DBMS的应用实现。结构化数据模型包括:层次模型、网状模型、关系模型等。
(3)物理数据模型(Physical Data Model),用于描述数据在存储介质上的组织结构,它与具体DBMS有关,也与操作系统和硬件有关,是物理层次上的数据模型。