文章目录
- 1. 概述
- 1.1 基本概念
- 1)信息 (Information)
- 2)数据 (Data)
- 3)数据库 (DB)
- 4)数据库系统(DBS)
- 5)数据库管理系统(DBMS)
- 1.2 数据库技术的发展
- 1.2.1 人工管理阶段
- 1.2.2 文件系统阶段
- 1)概述
- 2) 数据管理的特点
- 3)缺点
- 1.2.3 数据库系统阶段
- 1) 数据管理的特点
- 2)相对文件系统的特性
- 2. 数据模型
- 2.1 三要素
- 2.2 数据模型类型
- 1)层次和网状数据库系统
- 2)关系数据库系统
- 3)第三代数据库系统
- 3. 数据库管理系统(DBMS)
- 3.1 DBMS功能
- 1)数据定义
- 2)数据库操作
- 3)数据库运行管理
- 4)数据组织、存储和管理
- 5)数据库的建立和维护
- 6)其他功能
- 3.2 DBMS 的特点
- 1)数据结构化且统一管理
- 2)有较高的数据独立性
- 3)数据控制功能
- 4. 数据库三级模式
- 4.1 视图层 (View Level)
- 4.2 逻辑层 (Logical Level)
- 4.3 物理层 (Physical Level)
- 5. 管理角度的三级模式
- 5.1 外模式
- 5.2 概念模式
- 5.3 内模式
1. 概述
1.1 基本概念
1)信息 (Information)
- 概念:
- 是现实世界事物的存在方式或状态的反映
- 是具有特定释义和意义的数据
- 自然属性:
- 可感知
- 可存储
- 可加工
- 可传递
- 可再生等
- 信息的社会属性:是社会各行各业不可缺少的资源
2)数据 (Data)
- 数据
- 概念:是信息的符号表示(即,描述事物的符号记录)
- 表现形式:可以是文字、图形、图像、声音和语言等
- 数据处理:对各种数据进行收集、存储、加工和传播的一系列活动。
- 数据管理:对数据进行分类、组织、编码、存储、检索和维护的活动。
3)数据库 (DB)
- 概念:是统一管理的、长期储存在计算机内的,有组织的相关数据的集合。
- 特点:
- 是数据间联系密切
- 冗余度小
- 独立性较高
- 易扩展
- 可为各类用户共享
广义的讲,除了数据本身还包括了存储数据的各种物理设备
4)数据库系统(DBS)
- 概念:是一个采用了数据库技术,有组织地、动态地存储大量相关联数据,从而方便多用户访问的计算机系统。
- 和文件系统的区别
- 数据的充分共享、交叉访问、与应用程序的高度独立性
广义上包括了数据库管理系统(DataBase Management System,DBMS),其概念如下:
5)数据库管理系统(DBMS)
- 概述:
- 是数据库系统的核心软件
- 是一种解决如何科学地组织和储存数据,如何高效地获取和维护数据的系统软件
- 组成:
- 一组相互关联的数据集合
- 一组用以访问这些数据的软件
- 主要功能
- 数据定义功能
- 数据操纵功能
- 数据库的运行管理
- 数据库的建立与维护
1.2 数据库技术的发展
数据管理技术的发展经历了3个阶段:
1.2.1 人工管理阶段
-
早期状况:
- 数据处理都是通过手工进行的
- 当时的计算机主要用于科学计算
- 计算机上没有专门管理数据的软件
- 计算机上没有诸如磁盘之类的设备来存储数据
-
该阶段数据处理的特点:
-
数据量较少
数据和程序一一对应,即一组数据对应一个程序,数据面向应用,独立性很差。
-
数据不保存
-
没有软件系统对数据进行管理
-
-
缺点。
- 应用程序与数据之间的依赖性太强,不相互独立
- 数据组和数据组之间可能有许多重复数据,造成数据冗余
1.2.2 文件系统阶段
1)概述
- 大容量的磁盘等辅助存储设备出现
- 专门管理辅助存储设备上数据的文件系统应运而生
- 按一定的规则将数据组织成为一个文件
- 应用程序通过文件系统对文件中的数据进行存取和加工
2) 数据管理的特点
- 数据可以长期保留
- 数据的逻辑结构和物理结构有了区别
程序可以按照文件名称访问文件,不必关心数据的物理位置,由文件系统提供存取方法。
- 应用程序和数据不再直接对应
数据不属于某个特定的应用,数据可以重复使用
- 文件组织形式的多样化
有索引文件、链接文件和Hash文件等。但文件之间没有联系,相互独立,数据间的联系要通过程序去构造。
3)缺点
文件系统具有如下缺点。
- 数据冗余 (Data Redundancy)。
文件与应用程序密切相关,相同的数据集合在不同的应用程序中使用时,经常需要重复定义、重复存储,数据冗余度大。
- 数据不一致性 (Data Inconsistency)
由于相同数据的重复存储,单独管理,同样的数据可能存在于多个不同的文件中,给数据的修改和维护带来难度,容易造成数据的不一致。
- 数据孤立 (Data Isolation)
即数据联系弱。由于数据分散在不同的文件中,而这些文件可能具有不同的文件格式,文件之间是孤立的,所以从整体上看文件之间没有反映现实世界事物之间的内在联系,因此很难对数据进行合理的组织以适应不同应用的需要。
1.2.3 数据库系统阶段
1) 数据管理的特点
数据库系统阶段数据管理的特点如下:
-
采用复杂的数据模型表示数据结构
- 数据模型不仅描述数据本身的特点,还描述数据之间的联系
- 数据不再面向某个应用,而是面向整个应用系统
- 数据冗余明显减少,实现了数据共享
-
有较高的数据独立性
- 数据库是一种更高级的组织形式
- 由DBMS 负责数据的存取
DBMS把所有应用程序中使用的数据以及数据间的联系汇集在一起,以便于应用程序查询和使用。
2)相对文件系统的特性
数据库系统相对于文件系统的特性:
- 对应用程序的高度独立性
数据库对数据的存储是按照同一种数据结构进行的,不同的应用程序都可以直接操作这些数据
- 数据的充分共享性
数据库系统对数据的完整性、一致性和安全性都提供了一套有效的管理手段()。
- 操作方便性
数据库系统还提供管理和控制数据的各种简单操作命令,容易掌握,使用户编写程序简单
2. 数据模型
2.1 三要素
数据模型的三要素:
- 数据结构:对象类型的集合,是对系统静态特性的描述。
- 数据操作。对数据库中各种对象的实例允许执行的操作集合,包括操作及操作规则。如操作有检索、插入、删除和修改,操作规则有优先级等。数据操作是对系统动态特性的描述。
- 数据的约束条件
- 是一组完整性规则的集合
- 是具体的应用数据所必须遵循的特定语义的约束条件
- 作用:保证数据的正确、有效和相容
2.2 数据模型类型
按照不同的数据模型,可以将数据库的发展历史分为3个阶段:
1)层次和网状数据库系统
- 层次模型:
- 概念:采用树形结构表示数据与数据间的联系
- 每个结点表示一个记录类型(实体)
- 记录之间的联系用结点之间的连线表示
- 限制:根结点以外的其他结点有且仅有一个双亲结点
上层和下一层类型的联系是1: n 联系(包括1:1)
- 概念:采用树形结构表示数据与数据间的联系
- 网络结构:
- 表示数据间联系的数据模型
- 没有层次模型的限制:
- 允许一个以上的结点无双亲
- 允许一个结点有多个双亲
- 表示多对多关心需要引入联结记录
- 二者共同点:
- 支持三级模式的体系结构(后边对三级结构有介绍)
- 用存取路径来表示数据之间的联系
- 独立的数据定义语言
- 导航的数据操纵语言
2)关系数据库系统
- 概述:
- 关系:是一个实例,也是一张表,对应于程序设计语言中变量的概念
- 关系模式:相当于一个记录型,对应于程序设计语言中类型定义的概念
- 关系模型(Relation Model) :由若干个关系模式组成的集合
- 关系数据库系统
- 采用关系模型作为数据的组织方式
- 用表格结构表达实体集以及实体集之间的联系
- 特色:描述的一致性
- 优点
- 比网状、层次模型更为简单灵活
3)第三代数据库系统
- 新的数据模型:如面向对象模型、语义数据模型、 XML 数据模型、半结构化数据模型等
- No SQL
没有什么要记的
3. 数据库管理系统(DBMS)
实现了对共享数据有效地组织、管理和存取
3.1 DBMS功能
DBMS提供如下功能:
1)数据定义
- 数据定义语言 (Data Definition Language):对数据库的结构进行描述
- 内容包括:
- 外模式、模式和内模式的定义
- 数据库的完整性定义
- 安全保密定义(如口令、级别和存取权限)
- 这些定义存储在数据字典中,是 DBMS 运行的基本依据。
2)数据库操作
- 数据操纵语言 (Data Manipulation Language)
- 作用:实现对数据库中数据的基本操作(如检索、插入、修改和删除)
3)数据库运行管理
- 內容包括:
- 多用户环境下的并发控制
- 安全性检查和存取控制
- 完整性检查和执行
- 运行日志的组织管理
- 事务管理
- 自动恢复等
- 作用:保证数据库系统的正常运行
4)数据组织、存储和管理
- 基本目标:提高存储空间的利用率
- 管理对象包括:数据字典、用户数据、存取路径等
5)数据库的建立和维护
- 内容包括:
- 数据库的初始建立
- 数据的转换
- 数据库的转储和恢复
- 数据库的重组和重构
- 性能监测和分析等。
6)其他功能
如:
- DBMS 与网络中其他软件系统的通信功能
- 一个DBMS 与另一个 DBMS或文件系统的数据转换功能
3.2 DBMS 的特点
通过 DBMS来管理数据具有如下特点:
1)数据结构化且统一管理
- 采用数据模型表示数据结构
- 描述数据本身的特点
- 描述数据之间的联系
- 数据面向整个企业内的所有应用(而不再面向某个应用),真正实现了数据的共享
- 数据易维护、易扩展,数据冗余明显减少
2)有较高的数据独立性
- 数据的独立性:
- 概念:指数据与程序独立
- 包括:数据的
物理独立性
和数据的逻辑独立性
- 优点:
- 应用程序关心的只是数据的逻辑结构,无须了解数据在磁盘上的存储形式,从而简化应用程序,大大减少应用程序编制的工作量
3)数据控制功能
包括以下方面的控制:
-
数据库的安全性 (Security)
保护数据库以防止不合法的使用所造成的数据泄露、更改或破坏。
-
数据的完整性 (Integrality)
- 概念:是指数据库正确性和相容性
- 作用:是防止合法用户使用数据库时向数据库加入不符合语义的数据
-
并发控制 (concurrency control)
- 概念:是指在多用户共享的系统中,许多用户可能同时对同一数据进行操作
- 作用:协调并发事务的执行,保证数据库的完整性不受破坏
-
故障恢复 (recovery from failure)
- 常见故障:事务内部故障、系统故障、介质故障、计算机病毒等
- 概念:主要是指恢复数据库本身,即将数据库恢复到某个正确状态或一致状态
- 恢复原理:建立冗余 (redundancy) 数据
4. 数据库三级模式
- 作用:对用户屏蔽系统的复杂性,简化用户与系统的交互
4.1 视图层 (View Level)
- 概念:
- 最高层次的抽象
- 描述整个数据库的某个部分的数据
- 意义:通过构建视图层来实现用户关新,不仅使用户与系统交互简化,而且还可以保证数据的保密性和安全性。
4.2 逻辑层 (Logical Level)
- 概念:
- 比物理层更高一层的抽象
- 描述数据库中存储的数据以及这些数据间存在的关系
- 逻辑层抽象是数据库管理员的职责,管理员确定数据库应保存哪些信息
4.3 物理层 (Physical Level)
- 概念:
- 是最低层次的抽象
- 描述数据在存储器中是如何存储的
- 作用:物理层详细地描述复杂的底层结构
5. 管理角度的三级模式
- 数据库按
外模式
的描述提供给用户 - 数据库按
内模式
的描述存储在磁盘上 概念模式
提供了连接这两极模式的相对稳定的中间观点,并使得两级的任意一级的改变都不受另一级的牵制。
5.1 外模式
- 概述:
- 也称
用户模式
或子模式
- 是用户需要使用的部分数据的描述
- 也称
- 用户对数据库的操作:
- 外部模式由若干个外部记录类型组成
- 用户使用数据操纵语言对数据库进行操作,实际上是对外模式的外部记录进行操作。
5.2 概念模式
- 概述:
- 是数据库中全部数据的逻辑结构和特征的描述
- 由若干个
概念记录类型
组成,描述概念记录类型,不涉及具体的值- 概念记录类型:记录间的联系、操作、数据的完整性和安全性等要求
- 不涉及存储结构、访问技术等细节
- 实例:
- 概念模式的一个具体值称为模式的一个实例
- 同一个模式可以有很多实例
- 概念模式和实例
- 概念模式:反映的是数据库的结构及其联系,是相对稳定的
- 实例:反映的是数据库某一时刻的状态,是相对变动的
5.3 内模式
- 概述
- 也称存储模式
- 是数据物理结构和存储方式的描述
- 是数据在数据库内部的表示方式
- 定义所有的内部记录类型、索引和文件的组织方式,以及数据控制方面的细节