Lecture 1:数据库绪论
408 学习笔记:Lecture 1:数据库绪论。保留原有知识内容、公式与图示;有对应原件时提供查看和下载入口。
本页目录
描述:本节区分数据、数据库、数据库管理系统、数据库系统和数据库管理员,整理数据模型的三要素及概念/逻辑/物理三个层次,并说明外模式、模式、内模式、两级映像与逻辑/物理数据独立性。
1.1 数据库系统基本概念
1.1.1 数据 Data
数据是描述现实世界事物的符号记录,可以是数字、文字、图像、音频、视频等。
数据本身需要结合语义才能成为有意义的信息。例如 2026-08-14 只有在说明它是日期、生日或提交时间后,含义才明确。
1.1.2 数据库 DB
数据库(Database,DB)是长期存储在计算机内、有组织、可共享的数据集合。
典型特征:
- 数据按一定模型组织。
- 冗余受到控制。
- 可供多个用户或应用共享。
- 数据与应用程序具有一定独立性。
- 由 DBMS 统一管理。
1.1.3 数据库管理系统 DBMS
数据库管理系统(Database Management System,DBMS)是位于用户/应用程序与数据库之间的系统软件。
主要功能包括:
- 数据定义:定义模式、表、约束等。
- 数据组织、存储和管理。
- 数据操纵:查询、插入、删除、修改。
- 事务管理与并发控制。
- 安全性、完整性控制。
- 数据备份与故障恢复。
- 数据字典和运行维护。
DBMS 不是数据库本身。前者是管理数据的软件,后者是被管理的数据集合。
1.1.4 数据库系统 DBS
数据库系统(Database System,DBS)是采用数据库技术保存和管理数据的完整系统。
课件结构图可整理为:
程序员 / 数据库终端用户
↓
应用程序
↓
数据库管理系统 DBMS ← 数据库管理员 DBA
↓
数据库 DB
↓
数据 Data
广义的数据库系统包括:
- 数据库 DB。
- 数据库管理系统 DBMS。
- 应用程序。
- 数据库管理员 DBA。
- 用户。
- 支撑运行的计算机系统与相关文档。
关系可以简记为:
$$ \text{DBS} \supset \text{DBMS}+ \text{DB}+ \text{应用}+ \text{人员}. $$
1.1.5 数据库管理员 DBA
数据库管理员(Database Administrator,DBA)负责数据库系统的规划、授权、运行和维护。
典型职责:
- 设计或审核数据库模式。
- 分配权限并制定安全策略。
- 定义完整性约束。
- 监控性能并进行调优。
- 制定备份和恢复策略。
- 处理容量、存储和版本维护。
WARNING · 易错点 DB 是数据集合,DBMS 是管理软件,DBS 是包含数据、软件、应用和人员的完整系统,DBA 是管理角色。
1.2 为什么建立数据模型
现实事物不能直接被计算机理解,必须先把实体、属性、联系和约束转换为可表示、可处理的数据。
数据模型(Data Model)是对现实世界数据特征的抽象,为数据库系统提供统一的信息表示与操作框架,是数据库系统的核心基础。
抽象过程通常是:
现实世界
↓ 抽象
信息世界:实体、属性、联系
↓ 转换
机器世界:表、记录、文件、索引等
1.3 数据模型三要素
一个完整的数据模型包含三部分。
1.3.1 数据结构
数据结构描述系统的静态特征,回答:
- 有哪些对象?
- 对象有哪些属性?
- 对象之间有什么联系?
- 数据以什么结构组织?
例如关系模型用关系、元组、属性来组织数据。
1.3.2 数据操作
数据操作描述系统的动态行为,包括对数据的查询和更新。
基本操作:
- 查询。
- 插入。
- 删除。
- 修改。
数据模型还应规定操作的含义及操作规则。
1.3.3 数据约束
数据约束规定数据及其变化必须满足的条件,用于保证正确性和一致性。
例如:
- 学号必须唯一。
- 年龄不能为负数。
- 选课记录中的学生必须已经存在。
- 事务执行前后必须保持数据库一致性。
三要素对应关系:
| 要素 | 描述重点 | 系统特征 |
|---|---|---|
| 数据结构 | 数据对象及联系 | 静态特征 |
| 数据操作 | 查询和更新行为 | 动态特征 |
| 数据约束 | 合法状态与变化规则 | 完整性条件 |
1.4 数据模型的三个层次
1.4.1 概念模型
概念模型位于数据抽象的最高层,从用户和设计者角度描述现实世界信息。
特点:
- 面向现实业务,不依赖具体 DBMS。
- 使用较直观、简单的符号。
- 主要用于数据库概念设计阶段。
- 常用工具是 E-R 图或 UML 类图。
典型元素包括实体、属性和实体之间的联系。
NOTE 课件说概念模型“没有严格规定”是强调它比逻辑模型更贴近用户、实现无关;实际使用 E-R/UML 时仍需遵守相应表示规则。
1.4.2 逻辑模型
逻辑模型位于中间层,描述数据的逻辑结构以及可执行的数据操作和约束。
常见逻辑模型:
- 层次模型:树形结构。
- 网状模型:图结构。
- 关系模型:二维表结构。
- 面向对象、对象关系等模型。
DBMS 总是基于某种逻辑数据模型实现其对外的数据组织和操作接口。
1.4.3 物理模型
物理模型位于最底层,描述逻辑数据在存储介质上的组织与存取方式,是逻辑模型的物理实现。
涉及内容:
- 文件组织。
- 记录布局。
- 数据页和块。
- 索引结构。
- 聚簇方式。
- 存储位置和访问路径。
1.4.4 三者对比
| 层次 | 面向对象 | 主要内容 | 典型用途 |
|---|---|---|---|
| 概念模型 | 用户、设计人员 | 现实实体、属性、联系 | 概念设计,E-R 图/类图 |
| 逻辑模型 | DBMS、开发人员 | 表/树/图等逻辑结构 | 逻辑设计与数据操作 |
| 物理模型 | 系统实现、DBA | 文件、页、索引、存储路径 | 物理设计与性能优化 |
抽象方向:
概念模型:现实业务是什么
↓
逻辑模型:数据逻辑上怎样组织
↓
物理模型:数据实际上怎样存储
1.5 模式与实例
1.5.1 模式 Schema
模式是数据库全体数据的逻辑结构和特征的描述,相当于数据库的设计蓝图。
模式通常相对稳定,例如表名、属性、类型、联系和约束。
1.5.2 实例 Instance
实例是数据库在某一时刻实际存放的数据,是模式的具体取值。
例如:
Student(Sno, Sname, Age)是模式的一部分。- 某时刻表中的所有学生记录构成一个实例。
WARNING 模式描述结构,实例描述当前数据;数据库实例会频繁变化,模式通常较稳定。
1.6 三级模式结构
数据库系统用外模式、模式、内模式形成三个抽象层次。
1.6.1 外模式
外模式(External Schema)也称子模式或用户模式,是数据库局部数据的逻辑结构和特征描述。
特点:
- 面向某个用户、用户组或应用。
- 只暴露所需的数据子集。
- 可以隐藏其他数据,提高安全性和简洁性。
- 一个数据库可以有多个外模式。
- 多个应用也可以共享同一外模式。
1.6.2 模式
模式(Conceptual Schema)也称概念模式,是数据库全体数据的逻辑结构和特征描述。
特点:
- 是所有用户公共数据视图的综合。
- 描述数据的逻辑结构、联系和约束。
- 不关心具体物理存储细节。
- 一个数据库通常只有一个模式。
1.6.3 内模式
内模式(Internal Schema)也称存储模式,是数据库物理结构和存储方式的描述。
包括:
- 记录如何存放。
- 数据页和文件如何组织。
- 使用哪些索引和访问路径。
- 是否压缩、聚簇或分区。
一个数据库通常只有一个内模式。
1.6.4 图中结构
课件第三页显示:
应用 A、B 应用 C 应用 D、E
↕ ↕ ↕
外模式 1 外模式 2 外模式 3
\ | /
模式
↕
内模式
↕
数据库
因此:
- 外模式可以有多个,并分别服务不同应用。
- 模式是全局逻辑视图。
- 内模式对应统一的物理存储视图。
1.7 两级映像
三级模式之间通过两级映像连接。
1.7.1 外模式/模式映像
外模式/模式映像定义每个外模式与全局模式之间的对应关系。
当模式发生一定范围的变化时,只要调整映像,就可尽量保持外模式和应用程序不变。
它保证逻辑数据独立性。
1.7.2 模式/内模式映像
模式/内模式映像定义全局逻辑结构与物理存储结构之间的对应关系。
当存储文件、索引或访问路径变化时,只要调整映像,就可尽量保持模式和应用程序不变。
它保证物理数据独立性。
| 映像 | 连接层次 | 保证的独立性 | 典型变化 |
|---|---|---|---|
| 外模式/模式映像 | 外模式 ↔ 模式 | 逻辑独立性 | 逻辑结构变化 |
| 模式/内模式映像 | 模式 ↔ 内模式 | 物理独立性 | 文件、索引、存储方式变化 |
1.8 数据独立性
1.8.1 逻辑独立性
逻辑独立性指模式改变时,应用程序和外模式可尽量不变。
例如给基本表增加一个应用不使用的属性,可通过外模式/模式映像使原应用继续运行。
1.8.2 物理独立性
物理独立性指内模式改变时,模式、外模式和应用程序可保持不变。
例如:
- 为表增加索引。
- 改变文件组织。
- 把数据迁移到另一存储设备。
- 调整分区和聚簇方式。
通常物理独立性比逻辑独立性更容易实现。
1.9 易错点
- 数据不是数据库;数据库是按模型组织、长期存储和共享的数据集合。
- DBMS 是软件,DB 是数据,DBS 是完整系统,DBA 是管理人员。
- 数据模型三要素是数据结构、数据操作和数据约束,不能只写数据结构。
- 概念模型面向现实业务,逻辑模型面向逻辑组织,物理模型面向存储实现。
- 概念模型与三级模式中的“模式”不是同一个层次术语,不要只凭“概念”二字混用。
- 外模式描述局部数据,模式描述全体数据的逻辑结构,内模式描述物理存储。
- 一个数据库可有多个外模式,但通常只有一个模式和一个内模式。
- 外模式/模式映像保证逻辑独立性;模式/内模式映像保证物理独立性。
- 模式是结构蓝图,实例是某时刻的具体数据。
- 数据独立性表示修改某一层时减少对更高层的影响,不表示各层完全没有映射关系。
相关知识
1.10 本节复盘
- 数据库系统由 DB、DBMS、应用程序、用户、DBA 及运行环境共同构成。
- DBMS 位于应用与数据库之间,统一完成定义、操作、事务、安全、完整性和恢复管理。
- 数据模型是现实世界数据特征的抽象,包含数据结构、数据操作和数据约束三要素。
- 概念模型用于业务抽象,逻辑模型描述表/树/图等逻辑结构,物理模型描述存储组织。
- 外模式是局部用户视图,模式是全局逻辑视图,内模式是物理存储视图。
- 外模式/模式映像隔离逻辑结构变化,提供逻辑独立性。
- 模式/内模式映像隔离物理存储变化,提供物理独立性。
- 模式相对稳定,实例随数据库当前内容变化。