前言
在计算机发展初期,计算机主要用于
科学计算
。后来随着人类社会进入信息化时代,人们需要面临和处理的信息量急剧膨胀,迫切需要利用计算机完成对大量数据的组织、管理、存储和维护
,数据库技术应运而生。数据库系统是指在计算机系统中引进数据库技术的系统,在数据库系统中,通过数据库管理系统对数据进行统一管理。 企业可以通过搜集用户的需求信息,有针对性地开发新的产品满足用户的需求,同时减少旧产品的库存量。通过对信息资源的开发利用,可以使各种社会资源得到最大限度地节约和合理运用。为了能开发出适用的数据库应用系统,就需要掌握数据库原理,熟悉一门数据库语言。
一、发展史
1、概念简介
- 数据:是客观事物的
反映
和记录
;- 信息:有意义的数据,是数据表达的内容;
- 数据处理:数据转化为信息的过程;
- 两者有区别也有联系;
- 数据管理技术:对数据进行
分类、组织、编码、存储、检索、维护
;
2、三个发展阶段
2.1 人工管理阶段
于20世纪50年代中期以前,条件受限,数据的处理方式是
批处理
;
存在问题:
- 数据
无法保存
;- 数据和应用程序
一一对应
;- 数据
无法共享
;- 数据
不具有独立性
。
2.2 文件管理阶段
于20世纪50年代到60年代中期,出现了
磁盘、操作系统
等,数据可长期保存
;
存在问题:
- 数据的
冗余度大
;- 数据
独立性差
;缺乏
对数据的统一控制管理
;
2.3 数据库管理阶段
于20世纪60年代后期以来,需求不断增大,数据库出现;将整个所有数据按照一定的结构存放,系统负责管理和控制,用户通过应用程序存取数据;
特点:
- 数据
结构化
;- 数据
共享性高
、冗余度低
,易扩充
;- 数据由
DBMS
统一管理和控制;- 数据
独立性高
;
二、系统介绍
1、管理系统
是数据库的核心,是为数据库的建立、使用和维护而配置的软件;
2、系统功能:
2.1 数据定义功能
- 包括
外模式
、模式
、内模式
;- 各模式间映射;
- 定义约束条件来确保数据库中
用户口令
和存取的权限
;
2.2 操纵功能
对数据库数据的
检索
、插入
、删除
、修改
操作;
2.3 运行管理
是DBMS的
核心部分
;对数据库并发控制
、安全性检查
、完整性约束条件
的检查和执行、内部维护等;
2.4 数据控制功能
DBMS将数据分门别类地
组织
、存储
和管理
。实现数据间的联系,以便提高空间利用率以及数据的检索速度;
2.5 通信功能
DBMS需要提供与其他软件系统进行通信功能;
三、数据库系统
1、系统组成
操作系统、各种宿主语言、实用程序以及数据管理系统;
2、三级模式
ANSI
于1987年提出标准化:
- 面向用户或应用程序员的用户级;
- 面向建立和维护数据库人员的概念级;
- 面向系统程序员的物理级;
- 用户级对应外模式;
- 概念及对应模式;
- 物理级对应内模式;
2.1 模式
逻辑模式
,对应概念级
。由数据库管理系统提供的数据模式描述语言来描述、定义;
2.2 外模式
子模式/用户模式
,对应用户级
。是(几个)某个用户看到的数据视图;- 是从模式导出的一个子集,包含模式中允许特定用户使用的那部分数据;
2.3 内模式
存储模式
,对应物理级
。是数据库中全体数据的内部表示或底层描述,是数据库最低一级
的逻辑描述。
2.4 三级模式间的两级映射
为了能实现内部数据库的三个抽象层次的联系和转换,在这三级模式下提供了两层映像;
外模式/模式映像:
对应同一个模式可以有任意多个外模式,应用程序时依据数据的外模式编写的,从而应用程序可不必修改,保证了数据与程序的逻辑独立性;
模式/内模式映像:
定义了数据库的
全局逻辑结构
与存储结构
之间的对应关系;
3、数据库系统的特点
3.1 数据结构化
- 数据库系统实现了整体数据的结构化,是其最主要的特征之一;
- 不仅是数据内部是结构化,而且整体式结构化,数据之间有联系。
3.2 数据的共享、冗余度低
- 多个用户可同时存取数据而不相互影响;
- 数据库中用户的逻辑数据文件和具体的物理数据文件不必一一对应,即有效节省存储资源;
3.3 数据独立性高
- 数据与应用程序间的彼此独立,不存在相互依赖的关系;
- 物理数据独立:存储格式和组织改变时,不影响其逻辑结构及应用程序;
- 逻辑数据独立:变化时,不影响用户的应用程序;
3.4 数据由DBMS统一管理和控制
其并发共享;
- 数据的安全性;
- 数据的完整性检查;
- 数据库的并发访问控制;
- 数据库的故障恢复;
4、数据模型
- 概念模型:面向用户;
- 结构模型:计算系统;
4.1 概念模型
是现实世界到机器世界的一个中间层次。将该抽象概念转换为计算机上某一DBMS支持的数据模型;
- 最常用的是1976年提出
实体-联系图
-E-R模型
;- 包含实体、联系、属性;
- 联系方法:一对一、一对多、多对多;
主要概念:
实体
:客观存在并相互区别的事物及其事物之间的联系;属性
:实体所具有的某一特征
;主码
:(关键字)能唯一标识一个实体;如:学号是学生实体的主码;- 主码不能
为空
,不能由重复
;- 域:属性的
取值范围
;- 实体型:用实体名以其属性名集合来描述同类实体;
- 实体集:同型实体的集合;
E-R图表示方法
- 实体型:矩形表示;
- 属性:椭圆形;
- 联系:菱形;
4.2 逻辑模型
层次、网状、关系;
层次、网状
中各实体之间联系用指针
实现的,优点是查询速度高
;
层次模型:
数据库中最早出现的数据模型;(IBM的
IMS
)
用
树形结构
来表示实体及其之间的联系;
需要满足俩个条件:
- 有一个结点没有父结点,这个结点即是根结点;
- 其他结点有且仅有一个父结点;
可表示
一对一
以及一对多
,不能直接表示多对多;
网状模型:
用实体型结点的有向图来表示各实体及其之间的联系;
- 可以有一个以上的结点无父结点;
- 至少有一个结点有多于一个的父结点;
可直接表示
多对多关系
;
关系模型:
- 用
二维表格
来表示实体
以及其相互之间的联系;实体集
看成一个二维表
,每一个二维表称为一个关系
;
关系模型:
根据逻辑模型对应到具体的数据模型的机器实现的;是对真实数据库的描述;
- 表、视图、字段、数据类型等…
4、数据库应用系统体系结构
数据库应用系统:
数据存储层
、应用层
、用户界面
;
- 数据存储层:一般由
DBMS
来承担对数据库的各种维护操作;- 应用层:使用某种
语言
实现用户要求的各项工作程序
;- 用户界面层:提供用户可视化
操作界面
;
数据库系统分为:
单机
、主从
、分布式
、客户-服务器
、浏览器-服务器结构
;
4.1 单机结构
- 较为简单;整个数据库都在一台计算机上,不能共享;
- 适合
未联网的用户
、个人
或移动
用户;- 常见:Visual FoxPro、Access;
4.2 主从式结构
一个主机
带多个终端
的多用户结构;- 用
数据库系统都在主机
上,各个用户
通过主机的终端并发地存取
数据库,共享数据
;
优点:
- 易于
管理,控制,维护
;
缺点:
- 用户数过多时,主机
性能会下降
;- 若主机
故障
,则系统不能使用;
4.3 分布式结构
地理上或物理上
分散而逻辑上集中的数据库系统;- 通过网络连接,被连接的逻辑单位(计算机、外部设备)为结点;
- 由多各计算组成,每台都配由各自的本地数据库;
优点:
- 适应了
地理上分散
的公司;
缺点:
- 数据
处理、管理、维护
不便;- 远程访问受
网络限制
;
4.4 客户-服务器结构 C/S
主从式结构DBS
中的主机和分布式DBS
中的每个结点机都是一台通用计算机,即执行DBMS功能又执行应用程序;- 数据库服务器:专门用于执行
DBMS功能
的计算机;- 其余安装数据库应用程序的计算机为
客户机
;
4.5 浏览器-服务器结构 B/S
本质和
客户-服务器结构
一样;
5、数据库新技术
5.1 面向对象数据库
- 将面向对象的
模型
、方法
、机制与先进
的数据库技术有机地结合而形成;- 把面向对象的语言向数据库方向发展;
拓展
数据库系统;
优缺点:
- 表示
复杂的数据模型
,但没有统一的数据模型和形式化理论;
5.2 分布式数据库
- 指利用高速计算机网络将物理上分散的
多个数据存储单元
连接起来组成一个逻辑上统一
的数据库;- 思想:数据分散存储到多个通过
网络连接
的数据存储节点,以获取更大的存储容量
和更高的并发访问量
;
特点:
- 数据的
物理分布性
;- 数据的
逻辑相关性
;区域自治性
;- 数据结点间通过
通信网络
进行联系;
5.3 数据仓库技术
- 基于信息系统
业务发展
的需要,基于数据库系统发展;- 使用
技术建设
的信息系统;经营分析系统、决策支持系统- 基于数据及统计学
严谨逻辑思维
,达成有效工具;- 是面向主题的、集成的、与时间相关的、不可修改的数据集合;
5.4 大数据技术
- 规模大到
获取、存储、管理、分析
等方面都大大超出传统数据库软件工具的能力;- 四大特征:
大量、高速、多样、价值
- 数据容量大;
- 数据类型繁多;
- 商业价值高;
价值密度
的高低与数据总量
的大小成反比;- 处理速度快;