← 返回学习笔记

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 位于应用与数据库之间,统一完成定义、操作、事务、安全、完整性和恢复管理。
  • 数据模型是现实世界数据特征的抽象,包含数据结构、数据操作和数据约束三要素。
  • 概念模型用于业务抽象,逻辑模型描述表/树/图等逻辑结构,物理模型描述存储组织。
  • 外模式是局部用户视图,模式是全局逻辑视图,内模式是物理存储视图。
  • 外模式/模式映像隔离逻辑结构变化,提供逻辑独立性。
  • 模式/内模式映像隔离物理存储变化,提供物理独立性。
  • 模式相对稳定,实例随数据库当前内容变化。