1.3 数据模型
数据模型(Data Model)是数据库设计中用来对现实世界进行抽象的工具。数据模型包含数据结构、数据操作和数据约束等三方面的内容,分别描述系统的静态特征、动态行为和约束条件,为数据库系统的信息表示与操作提供一个抽象的框架。对现实世界的抽象建模过程分为三个阶段,分别是概念数据模型、逻辑数据模型和物理数据模型,如图1-9所示。
图1-9 数据抽象过程与数据模型
1. 概念数据模型
概念数据模型(Conceptual Data Model)是数据库设计人员在需求分析的基础上对客观对象及其联系的第一次抽象。概念数据模型的建模是一个在信息世界,或者说在设计人员头脑中进行数据抽象的过程,设计人员不受操作系统及数据库管理系统的具体技术束缚,专注于把数据库的开发需求按照用户的观点抽象为文字或图表。E-R模型是常用的概念数据模型设计工具之一。概念数据模型与具体的操作系统、数据库管理系统和硬件设备都没有关系。
2. 逻辑数据模型
概念数据模型无法直接被计算机处理,需要转换为逻辑数据模型(Logical Data Model)。逻辑数据模型是一种在数据世界中面向具体的数据库管理系统的数据模型,涉及计算机系统和数据库管理系统,但并不考虑数据在存储设备上的实现。
3. 物理数据模型
每一种逻辑数据模型在实现时都有其对应的物理数据模型。物理数据模型(Physical Data Model)是一种面向计算机的物理表示的模型,描述了数据在储存介质上的组织结构。物理数据模型建模是一个在计算机世界中进行数据抽象和数据处理的过程,与操作系统、数据库管理系统和硬件都有关系,同一种逻辑数据模型可以生成不同的物理数据模型。数据库管理系统提供了数据的物理独立性与可移植性,大部分物理数据模型的实现工作由系统自动完成,设计者只需要设计索引、聚集等特殊结构。类似于使用Word编辑文档并提交保存后,文档由系统自动存储在存储介质上。