时间:2022-11-14 22:30:01 | 来源:信息时代
时间:2022-11-14 22:30:01 来源:信息时代
数据建模 : 对现实世界的问题进行分析、提取、抽象,用形式化的表达工具对抽象的内容进行表达,建立合理的数据模型,从而帮助计算机处理和解决问题的过程。数据建模是数据库开发过程中最花费精力和时间的一部分,重点是对需要的数据进行组织,其目的是确保数据库所需的数据对象被完全、准确地描述出来。对于数据库应用系统而言,数据模型的分析设计方法决定着数据库应用的分析设计方法。
数据模型是客观事物及其联系的数据描述。数据模型具有描述数据和数据联系两方面功能,它是数据库中用来对现实世界进行抽象的工具,是数据库系统的核心与基础。数据模型有三个要素:
(1)数据结构:数据结构主要描述数据类型、内容、性质的有关情况以及数据间的联系,是对系统静态特征的描述。
(2)数据操作:主要描述在相应数据结构上的操作类型与操作方式,是对系统动态行为的描述。
(3)数据约束:主要描述数据结构内数据间的语法、语义联系,它们间的制约与依存关系,以及数据动态变化的规则,以保证数据的正确、有效与相容。
数据模型分为如下三种模型:
(1) 概念数据模型: 可以使用对象定义语言(object definition language,ODL)或实体—联系E-R模型表示。ODL采用对象定义语言来分析和抽象现实世界,以面向对象的观点和方法来说明数据库的概念结构,可方便地转换成对象数据库管理系统OODBMS的说明。而E-R模型使用实体与联系来表达现实世界的事物。实体联系模型最早是由陈品山博士于1976年提出的,后经多人修改,逐渐成形。目前,实体联系模型是概念数据建模的主流方法。
(2)逻辑数据模型:在数据库实施时使用,描述了系统中永久性数据的逻辑和物理表达。常见的逻辑数据模型有四种:①层次模型(hierarchical model):是数据库系统最早使用的一种,它的数据结构是一棵“有向树”。层次模型的特征是: 所有结点中有且仅有一个结点没有父结点,这个结点称为根结点;除了根结点,其他结点有且仅有一个父结点。②网状模型(network model):是用网状结构表示实体及其之间联系的模型。网状模型的特征是: 允许结点有多于一个的父结点; 可以有一个以上的结点没有父结点。③关系模型(relational model): 是数据库所讨论的模型中最重要的模型。自20世纪80年代以来,计算机厂商推出的数据库管理系统几乎都支持关系模型。关系模型是用二维表格结构来表示实体以及实体之间联系的数据模型。关系模型的数据结构是一个“二维表空间”组成的集合,每个二维表又可称为关系。因此可以说,关系模型是“关系框架”组成的集合。④面向对象模型(object-oriented model): 通过面向对象的编程方法实现数据的定义、存储以及访问。对于一个面向对象数据库,使用所选定的面向对象编程语言来定义数据结构,同样使用该语言来创建与数据库交互的软件。
(3)物理数据模型:反映了数据在存储介质上的存储结构,物理数据模型不仅与具体的DBMS相关,还与操作系统及硬件相关。用户根据逻辑数据模型中已经确立的需求进行基于选定的数据库管理系统的数据库设计工作,这个过程称为物理建模。
数据建模一般可以采用如下步骤进行:
(1)需求收集和分析:在这个阶段主要是从用户的角度理解问题,分析用户所关心的问题,问题的解决过程和方法以及用户最终需要的结果。需求收集、表达以及分析可以采用数据流图、系统流图、数据字典等工具和方法。
(2)分析设计概念结构:表达用户的需求后,需要采用一个形式化的表达工具来表示需求,从而可以将需求转化为逻辑数据模型。一般采用ODL或E-R模型表示。
(3)设计逻辑结构:分析和设计逻辑数据模型与两个因素有关,第一是采用什么样的概念模型,不同的概念模型对于不同逻辑模型有差异;第二是逻辑模型还与计划采用的物理模型有关。
(4)设计物理结构:物理设计是根据逻辑结构中已经确立的需求所进行的基于选定的数据库管理系统的数据库设计工作。在设计物理结构过程中,对象(如表和列)的定义是根据逻辑结构的要求而定义的。约束条件的定义包括主键和外键的定义及用户定义的约束条件。
(5)物理实现:物理实现的具体工作因数据库管理系统软件的不同而不同。根据物理结构的定义,在具体的数据库管理系统软件中实现物理模型。
总体而言,数据库应用系统的数据建模工作可以用图1表示的数据建模流程图表示。
图1 数据建模流程图