第1章 数据管理与数据模型
1.1 信息、数据和数据处理
1.1.1 信息与数据
信息是现实世界各种事物的特征、形态以及不同事物间的联系等在人脑里的抽象反映。
数据是表达信息的载体。为了表达信息(抽象概念),必须使用某些符号,这些符号叫数据。广义地讲,数据是一切文字、符号、声音、图像等有意义元素的组合。
1.1.2 数据处理
数据处理是对数据的收集、记载、整理、组织、存储、检索、计算∕加工、维护、传送等一系列活动的总和。
基本目的都是从已知数据出发,参照各种相关数据,经过计算∕加工,得到新的数据。新的精炼数据(表示新的信息)能够反映事物的本质和特征以及事物间的内在联系。这些有价值、有意义的数据成为人们决策的依据。
数据处理的特点:数据量大,数据间的逻辑联系错综复杂,但是计算相对比较简单,较少涉及复杂的数学模型和计算方法。
数据处理过程中的主要矛盾是如何更好地组织管理数据。
数据处理的主要问题:
数据管理问题。数据管理是数据处理过程中一个基本一个环节,是所有数据处理任务必需的共性发,具体是指如何在计算机内把数据组织管理好。数据管理的优劣,直接影响数据处理的效率。
数据处理方式问题。
集中处理方式:把要处理的数据作为一个完整的集合,所有的工作都由一台计算机完成;
分散处理方式:把数据集合分成多个部分,分别由多个计算机处理完成,对数据的管理和操纵都分开并且相互产,彼此之间没有数据通信联系;
分布处理方式:把在多台计算机上的数据通过网络连接起来,数据在物理上分开存储,但是在逻辑上是一个整体。
1.2 数据管理技术的发展
数据管理是指如何在计算机内把数据管好,包括对数据的组织、编目、定位、存储、检索和维护等。
1.2.1 人工管理阶段
主要特征:
数据不保存在计算机中
没有专用的软件对数据进行管理
以应用为中心,数据面向应用
1.2.2 文件系统阶段
文件系统:是用文件方式管理数据的系统,它把数据组织成文件,按名存取数据,既方便,又实用。文件系统既可顺序访问,也可随机访问。
数据项:是文件中最小的、不再细分的数据单位,描述事物的某个特征。
记录:若干相关的数据项的集合,一个记录可以表达一个具体的事物。
文件:若干记录的集合,是操作系统管理数据的一个基本单位。
数据组织成文件形式存储在磁盘上。
磁带是顺序存储设备,存取数据时只能一个一个顺序地存取。
磁盘既可以顺序访问,也可以随机访问。
特征:
数据可以长期存在在外存的磁盘上;
有专门的软件进行数据管理;
数据的逻辑结构:是指按某种观点把关联的数据起来;
数据的物理结构:是指用体现数据逻辑结构的物理存储形式把数据存储到存储设备上。
出现多种不同的文件组织
数据不再属于某个特定的程序,在一定程度上可以共享
随着数据管理规模的扩大,显露文件系统存在的缺陷:
仍以应用为中心,数据面向应用;
程序与文件任何一方发生变动都可能引起另一方做相应的修改。
数据冗余;
数据冗余是指同一数据在多个不同的地方重复存储。
数据不一致性。
数据不一致性:指同一数据在不同的存储地点出现差异。
数据联系弱。
因为文件与文件相互独立,文件间缺乏联系,所以文件系统不能反映现实世界事物间的联系。
1.2.3 数据库系统阶段
特征:
数据结构化——用数据模型表示数据结构
数据模型:不仅描述数据本身,还描述数据间的联系。
数据共享
不同用户所使用的数据可以重叠,同一数据可供多个用户使用,这就是共享。
减少数据冗余
有较高的数据独立性
数据库技术期望的目标就是数据独立性,即数据与程序无关。
数据库的结构
用户的逻辑结构
整体逻辑结构
物理结构
数据独立性
逻辑数据独立性
物理数据独立性
为用户提供方便的用户接口
对数据实行统一管理
1.2.4 四个重要的术语
数据库(Database,DB):DB是实行统一管理的相关数据的集合。
数据库管理系统(Database Management System,DBMS):DBMS是数据管理的核心软件。
数据库系统(Database System,DBS):DBS是指实现有组织、动态地存储大量关联数据,方便多用户访问的计算机软件、硬件、数据资源和数据库管理员(Database Administrator,DBA)组成的计算机系统。
数据库技术:是一门研究数据库的结构、存储、管理的软件学科。
预备知识:离散数学、数据结构、操作系统、软件工程
是一门综合性较强的学科
1.3 数据模型
数据模型是对客观事物及其联系的数据描述。
数据模型不停要表示存储了哪些数据
还要用某种结构表示各种不同数据之间的联系
常用的数据模型
概念数据模型(1.3.2)
结构数据模型(1.3.3)
1.3.1 数据与数据联系的描述
对数据的描述
数据描述:现实世界→信息世界→机器世界
现实世界:数据的源头
信息世界:现实世界的事物在人脑中的抽象反映
型是概念的内涵,值是概念的实例。
实体(entity):客观存在的可以相互区别的事物
属性(attribute):实体所具有的特征
实体集(entity set):具有相同性质的同类实体的集合
实体标识符(identifier):能够唯一标识每个实体的属性或属性集
机器世界:信息在机器世界中以数据形式存储,因此又称为数据世界
数据项(field):对应实体属性的数据单位,描述事物的某个特性
记录(record):若干相关数据项的有序集合,描述实体
文件(file):若干记录的集合,描述实体集
关键字(key):能够唯一地标识文件中每个记录的数据项或数据项组合,又叫关键码,简称键,与实体标识符对应
物理数据是实际存放在存储设备上的数据。
逻辑数据是程序员或用户用以操作的数据形式,是按某种逻辑观点看待数据的视图。
对数据联系的描述
实体的联系
实体内部的联系,反映在数据上是一个记录内各数据项间的联系
实体与实体间的联系,反映在数据上是记录与记录间的联系
两个不同实体集的实体间的联系
一对一联系
如果实体集E1中的每个实体至多和实体集E2中的一个实体有联系;反之,实体集E2中的每个实体至多和实体集E1中的一个实体有联系,则称E1和E2的联系是一对一联系
一对多联系
如果实体集E1中的每个实体和实体集E2中的任意个(包括零个)实体有联系;反之,实体集E2中的每个实体至多和实体集E1中的一个实体有联系,则称E1和E2的联系是一对多联系
多对多联系
如果实体集E1中的每个实体和实体集E2中的任意个(包括零个)实体有联系;反之,实体集E2中的每个实体和实体集E1中的任意个(包括零个)实体有联系,则称E1和E2的联系是多对多联系
注意:
实体间的联系反映了实体间的语义关系
联系本身也是实体,也可以命名,也可以有属性。
1.3.2 实体联系模型
信息模型是脱离计算机系统的模型。用来描述信息的结构,强调语义表达功能。比较著名的是实体联系模型(Entity Relationship Model),简称ER模型。
ER图的四个基本成分
矩形框——表示实体型
菱形框——表示联系型
椭圆形框——表示实体型或联系型的属性
直线——用来连接上述三种图框
联系的分类
两个不同实体型之间的联系
两个不同实体型之间的多种联系
多个不同实体型之间的联系
多个不同实体型之间的多元联系
同一实体型内各实体间的联系
1.3.3 结构数据模型
结构数据模型是能够在计算机中真正实现的模型,有着严格的形式化定义。
结构数据模型的组成
数据结构——解决数据与联系如何表达和实现
数据操作——实现对数据库有检索和更新操作
数据完整性约束——给出数据及联系应具有的制约和依赖规则,保证数据库中的数据的正确性。
结构数据模型的分类
层次模型
层次模型是用树结构表示记录型及记录型间的联系
层次模型中,不管记录型还是记录值,其组织形式都是一棵树,都是一对多联系的。
特点
联系通过指针实现
检索效率较高
查找记录时要指定存取路径
网状模型
网状模型用有向图结构表示记录型及记录型间的联系。
网状模型的组织形式是结点的连通图。在图中可以有一个以上的结点无父结点,每个结点也可以有多于一个的父结点。
特点
联系通过指针实现
检索效率较高
程序编写复杂
关系模型
关系模型是由若干张二维表组成的集合。
关系模式相当于一张二维表的框架,在这个框架下填入数据,称为关系模式的一个实例,也叫关系。
关系模型是数学化的模型,对关系的任何操作都可以通过二维表的方式去理解。
面向对象模型
对象(Object)是封装了状态(数据)和行为(函数、程序)的实体
对象的状态是对该对象属性值的集合。
对象的行为是在对象状态上操作的方法集。
类(Class)是属性集和方法集相同的所有对象的集合
类的继承使得数据和程序的可以重用。
多态性
多态性使每个类可以具有独特的行为。