01 概论
一、概论
1.1 数据库系统概述
1.1.1 数据库的4个基本概念
-
数据
描述事物的符号记录称为数据。数据的含义称为数据的语义,数据与其语义是不可分割的。
-
数据库
数据库是长期存储在计算机内、有组织的、可共享的大量数据的集合。数据库数据具有永久存储、有组织和可共享三个基本特点。
-
数据库管理系统
数据库管理系统和操作系统一样是计算机的基础软件,也是一个大型复杂的软件系统。有以下几个主要功能:
- 数据定义功能
- 数据组织、存储和管理
- 数据的操纵功能
- 数据库的事务管理和运行管理
- 数据库的建立和维护功能
- 其他功能
-
数据库系统
数据库管理系统是由数据库、数据库管理系统(及其应用开发工具)、应用程序和数据库管理员(DBA)组成的存储、管理、处理和维护数据的系统。
1.1.2 数据管理技术的产生和发展
- 人工管理阶段
- 文件系统阶段
- 数据库系统阶段
1.1.3 数据库系统的特点
-
数据结构化
数据库系统实现整体数据结构化,这是数据库的主要特征之一,也是数据库系统与文件系统的本质区别。所谓“整体”数据结构化是指数据库中的数据不再仅仅针对某一应用,而是面向整个组织或企业;不仅数据内部是结构化的,而且整体是结构化的,数据之间是具有联系的。
-
数据的共享性高、冗余度低且易扩充
-
数据独立性高
- 物理独立性:用户的应用程序和数据库中的数据的物理存储是相互独立的。
- 逻辑独立性:用户的应用程序与数据库的逻辑结构是相互独立的。
-
数据由数据库管理系统统一管理和控制
数据库管理系统必须提供以下几方面的数据控制功能:
- 数据的安全性保护
- 数据的完整性检查
- 并发控制
- 数据库恢复
数据库是长期存储在计算机内有组织、大量、共享的数据集合。它可以供各种用户共享,具有最小冗余度和较高的数据独立性。数据库管理系统在数据库建立、运用和维护时对数据库进行统一控制,以保证数据的完整性和安全性,并在多用户同时使用数据库时进行并发控制,在发生故障后对数据库进行恢复。
数据库系统的出现使信息系统从以加工数据的程序为中心转向围绕共享的数据库为中心的新阶段。
1.2 数据模型
数据模型也是一种模型,它是对现实世界数据特征的抽象。数据模型是数据库系统的核心和基础。
1.2.1 两类数据模型
第一类是概念模型,也称信息模型,它是按用户观点来对数据和信息建模,主要用于数据库设计。
第二类是逻辑模型和物理模型。其中逻辑模型主要包括层次模型、网状模型、关系模型、面向对象数据模型和对象关系数据模型、半结构化数据模型等,它是按计算机系统的观点对数据建模,主要用于数据库系统的实现。而物理模型是对数据最底层的抽象,它描述数据在系统内部的表示方式和存取方法,或在磁盘上的存储方式和存取方法,是面向计算机系统的。
1.2.2 概念模型
1 信息世界中的基本概念
- 实体
- 属性
- 码
- 实体型
- 实体集
- 联系
2 概念模型的一种表示方法:实体-联系方法
即E-R方法,用E-R图描述现实世界的概念模型。
1.2.3 数据模型的组成要素
-
数据结构
数据结构描述数据库的组成对象以及对象之间的联系。
-
数据操作
-
数据完整性的约束条件
1.2.4 常用的数据模型
- 层次模型
- 网状模型
- 关系模型
- 面向对象数据模型
- 对象关系数据模型
- 半结构化数据模型
1.2.5 层次模型
数据库系统中最早出现的数据模型。层次模型像一颗倒立的树,节点的双亲是唯一的。
1.2.6 网状模型
1.2.7 关系模型
关系模型是最重要的一种数据模型。关系数据库系统采用关系模型作为数据的组织方式。
1 关系模型的数据结构
- 关系(表)
- 元祖(行)
- 属性(列)
- 码(key)
- 域(取值范围)
- 分量(元祖中的一个属性值)
- 关系模式(对关系的描述)
关系模型要求关系必须是规范化的。关系的每一个分量必须是一个不可分的数据项。
2 关系模型的数据操纵与完整性约束
操作:查询、插入、删除和更新数据。
关系的完整性约束条件:实体完整性、参照完整性和用户定义的完整性。
关系模型中的数据操作是集合操作,操作对象和操作结果都是关系,即若干元祖的集合。另一方面,关系模型把存取路径向用户隐蔽起来,用户只要指出“干什么”或“找什么”,不必详细说明“怎么干”或“怎么找”。
1.3 数据库系统的结构
1.3.1 数据库系统模式的概念
数据模型中有“型”(type)和“值”(value)的概念。
模式(schema)是数据库中全体数据的逻辑结构和特征的描述。仅仅涉及型的描述,不涉及具体的值。
模式的一个具体值称为模式的一个实例(instance)。
模式是相对稳定的,而实例是相对变动的。
1.3.2 数据库系统的三级模式结构
1 模式(schema)
模式也称逻辑模式,是数据库系统中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。
2 外模式(external schema)
外模式也称子模式(subschema)或用户模式,它是数据库用户能够看见和使用的局部数据结构的逻辑结构和特征的描述,是数据库用户的数据视图,是与某一应用有关的数据的逻辑表示。
3 内模式(internal schema)
内模式也称为存储模式(storage schema),一个数据库只有一个内模式。它是数据物理结构和存储方式的描述,是数据在数据库内部的组织方式。
1.3.3 数据库的二级映像功能与数据独立性
1 外模式/模式映像
当模式改变时,修改各个外模式/模式映像,可以使外模式不变,从而应用程序不必修改。为数据与程序的逻辑独立性。
2 模式/内模式映像
当数据存储结构改变时,对模式/内模式映像作相应改变,可以使模式保持不变,从而应用程序不必改变。为数据与程序的物理独立性。
数据与程序之间的独立性使得数据的定义和描述可以从应用程序中分离出去。另外由于数据的存取由数据库管理系统管理,从而简化了应用程序的编制。大大减少了应用程序的维护和修改。
1.4 数据库系统的组成
- 硬件平台及数据库
- 软件
- 人员
- 数据库管理员(DBA),有以下职责
- 决定数据库中的信息内容和结构
- 决定数据库的存取结构和存取策略
- 定义数据的完整性要求和完整性约束条件
- 监控数据库的使用和运行
- 数据库的改进和重组、重构
- 系统分析员和数据库设计员
- 应用程序员
- 用户
- 数据库管理员(DBA),有以下职责
1.5 小结
本章概述了数据库的基本概念,并通过对数据管理技术进展情况的介绍阐述了数据库技术产生和发展的背景,也说明了数据库系统的优点。数据模型是数据库系统的核心和基础。本章简要介绍了概念模型、组成数据模型的三个要素和三种主要的数据库模型——层次模型、网状模型和关系模型。后续章节将会详细介绍关系模型。
本章还介绍了数据库管理系统内部的系统结构。数据库系统三级模式和两层映像的系统结构保证了数据库系统能够具有较高的逻辑独立性和物理独立性。
本章最后介绍了数据库系统的组成,使读者了解数据库系统不仅是一个计算机系统,而是一个人-机系统,人(特别是数据库管理员)的作用尤为重要。
学习这一章应把注意力放在掌握基本概念和基本知识方面,为进一步学习后面的章节打好基础。本章新概念较多,如果是刚开始学习数据库,可在学习后续章节后再回来理解和掌握这些概念。