购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

第2章
数据库系统结构

本章主要介绍数据模型和数据库管理系统的体系结构,包括概念层数据模型和关系数据库采用的组织层数据模型,概念层数据模型用于为现实世界形象的模型,组织层数据模型是为方便计算机处理数据采用的逻辑模型。关系数据库将数据划分为不同的层次,使用户不需要关心数据的物理细节,从而简化用户对数据的访问,这些就是数据库系统结构要介绍的内容。理解本章的内容有助于读者学习后续章节。本章的内容可能有些抽象和枯燥,但在学习完后续章节的内容后,再回顾这部分内容,就会有更好的理解。

2.1 数据和数据模型

数据是我们要处理的信息,数据模型是数据的组织方式。本节介绍数据和数据模型的基本概念。

2.1.1 数据与信息

为了了解世界、研究世界和交流信息,人们需要描述各种事物。用自然语言来描述虽然很直接,但过于烦琐,不便于形式化,而且也不利于用计算机来表达。为此,人们常常只抽取那些感兴趣的事物特征或属性来描述事物。例如,一名学生可以用信息(张三,2312101,男,2004,计算机系,应用软件)描述,这样的一行数据称为一条记录。单看这行数据我们很难知道其确切含义,但对其进行如下解释:张三是2312101班的男学生,2004年出生,计算机系应用软件专业,其内容就是有意义的。我们将描述事物的符号记录称为 数据 ,将从数据中获得的有意义的内容称为 信息 。数据有一定的格式,例如,姓名一般是长度不超过4个汉字的字符(假设不包括少数民族的姓名),性别是一个汉字的字符。这些格式的规定是数据的语法,而数据的含义是数据的语义。因此,数据是信息存在的一种形式,只有通过解释或处理才能成为有用的信息。

一般来说,数据库中的数据具有静态特征和动态特征两个方面:

1)静态特征。数据的静态特征包括数据的基本结构、数据间的联系以及对数据取值范围的约束。比如1.2.1节中给出的学生管理的例子。学生基本信息包含学号、姓名、性别、出生日期、联系电话、所在系、专业、班号,这些都是学生所具有的基本性质,是学生数据的基本结构。学生选课信息包括学号、课程号和考试成绩等,这些是学生选课的基本性质。但学生选课信息中的学号与学生基本信息中的学号是有一定关联的,即学生选课信息中的“学号”能取的值必须在学生基本信息中的“学号”取值范围之内,因为只有这样,学生选课信息中所描述的学生选课情况才是有意义的(我们不会记录不存在的学生的选课情况),这就是数据之间的联系。最后我们看数据取值范围的约束。我们知道人的性别一项的取值只能是“男”或“女”、课程的学分一般是大于0的整数值、学生的考试成绩一般在0~100分之间等,这些都是对某个列的数据取值范围进行的限制,目的是在数据库中存储正确的、有意义的数据。这就是对数据取值范围的约束。

2)动态特征。数据的动态特征是指对数据可以进行的操作以及操作规则。对数据库数据的操作主要有查询数据和更改数据,更改数据一般又包括对数据的插入、删除和更新。

一般将对数据的静态特征和动态特征的描述称为 数据模型三要素 ,即在描述数据时要包括数据的基本结构、数据的约束条件(这两个属于静态特征)和定义在数据上的操作(属于数据的动态特征)三个方面。

2.1.2 数据模型

对于模型,特别是具体的模型,人们并不陌生。一张地图、一组建筑设计沙盘、一架航模飞机等都是具体的模型。人们从模型可以联想到现实生活中的事物。模型是对事物、对象、过程等客观系统中感兴趣的内容的模拟和抽象表达,是理解系统的思维工具。数据模型(Data Model)也是一种模型,它是对现实世界数据特征的抽象。

数据库是企业或部门相关数据的集合,数据库不仅要反映数据本身的内容,而且要反映数据之间的联系。由于计算机不可能直接处理现实世界中的具体事物,因此,必须要把现实世界中的具体事物转换成计算机能够处理的对象。在数据库中用数据模型这个工具来抽象、表示和处理现实世界中的数据和信息。通俗地讲,数据模型就是对现实世界数据的模拟。

现有的数据库系统均是基于某种数据模型的,因此,了解数据模型的基本概念是学习数据库的基础。

数据模型一般应满足三个要求:第一个是数据模型要能够比较真实地模拟现实世界;第二个是数据模型要容易被人们理解;第三个是数据模型要能够很方便地在计算机上实现。用一种模型来同时很好地满足这三个方面的要求在目前是比较困难的。在数据库系统中可以针对不同的使用对象和应用目的,采用不同的数据模型来实现。

数据模型实际上是模型化数据和信息的工具。根据模型应用的不同目的,可以将这些模型分为两大类,它们分别属于两个不同的层次。

第一类是 概念层数据模型 ,也称为概念模型或信息模型,它从数据的应用语义视角来抽取模型并按用户的观点来对数据和信息进行建模。这类模型主要用在数据库的设计阶段,它与具体的数据库管理系统无关。另一类是 组织层数据模型 ,也称为组织模型,它从数据的组织方式来描述数据。所谓组织层就是指用什么样的数据结构来组织数据。数据库发展到现在主要包括如下几种组织方式(或叫组织模型):层次模型(用树形结构组织数据)、网状模型(用图形结构组织数据)、关系模型(用简单二维表结构组织数据)以及对象-关系模型(用复杂的表格以及其他结构组织数据)。组织层的数据模型主要是从计算机系统的观点对数据进行建模,它与所使用的数据库管理系统的种类有关,主要用于DBMS的实现。

为了把现实世界中的具体事物抽象、组织为某一具体DBMS支持的数据模型,人们通常首先将现实世界抽象为信息世界,然后再将信息世界转换为机器世界。即:首先把现实世界中的客观对象抽象为某一种信息结构,这种信息结构并不依赖于具体的计算机系统,而且也不与具体的DBMS相关,而是概念级的模型,也就是我们前边所说的概念层数据模型;然后再把概念层的模型转换为具体的DBMS支持的组织层数据模型。从现实世界到概念层数据模型使用的是“抽象”技术,从概念层数据模型到组织层数据模型使用的是“转换”。这个过程如图2-1所示。 u/iJa98VceRC0DMyQ1YfNZfE8OpohjzfbqzzSWvacTwHKIrcUOEB5FTN82nDcK1g

点击中间区域
呼出菜单
上一章
目录
下一章
×