数据库基础概念与体系结构 - 软考备战(二十九)
2026/4/17 23:12:27 网站建设 项目流程

数据库系统(一)

参考资料:

终于有人把数据库讲明白了 - 数据集成与治理 - 博客园

数据库基础知识总结 | JavaGuide

一文读懂数据库中的DB、DBMS、DBS、DBAS-云社区-华为云

数据库(一):三级模式与两级映像 - 技术栈

【数据库系统概论】MySQL中三级模式和二级映像指的是什么?开篇 - 小林野夫 - 博客园


目录

数据库系统(一)

5.1. 数据库基础概念与体系结构

5.1.1 核心概念辨析

1. 概念范围递增与包含关系

2. 数据库系统的核心特点

数据结构化(最本质区别)

数据的共享性高、冗余度低、易扩充

数据独立性高

数据由 DBMS 统一管理和控制

5.1.2 数据管理技术的演进(按数据模型分类)

1. 第一代:非关系型(格式化模型)—— 层次与网状

层次模型

网状模型

2. 第二代:关系模型 (RDBMS) —— 当前绝对主流

3. 第三代:对象-关系模型 (ORDBMS)

5.1.3 数据库系统三级模式与两级映像

1. 三级模式结构(从上到下,视角不同)

外模式—— “用户看什么”

模式—— “全局有什么”

内模式—— “底层怎么存”

2. 两级映像(连接三级的桥梁,实现独立性的机制)

外模式/模式映像(定义在外模式中描述)

模式/内模式映像(定义在模式中描述,通常只有一个)


5.1. 数据库基础概念与体系结构

5.1.1 核心概念辨析

1. 概念范围递增与包含关系

数据:描述事物的符号记录。

数据库 (DB):长期储存在计算机内、有组织的、可共享的大量数据的集合。

数据库管理系统 (DBMS):位于用户与操作系统之间的数据管理软件(如 MySQL、Oracle)。它是科学有效地组织和存储数据、获取和维护数据的关键。

数据库系统 (DBS):引入了数据库后的整个计算机系统。

注意:

DBMS不是数据库本身,而是管理数据库的软件

DBS = DB + DBMS + 应用程序 + DBA(数据库管理员) + 硬件平台

2. 数据库系统的核心特点

为什么不用文件系统(如 Excel、TXT)存数据,而非要用数据库?

文件系统具体说明链接:

文件管理 - 软考备战(二十)-CSDN博客

核心在于以下四点:

数据结构化(最本质区别)

文件系统内部是无结构的(如一篇 Word 文档),即使有结构(如 Excel)也只是针对单一文件;

而数据库是全局结构化的,不仅描述数据本身,还描述数据之间的联系(如外键约束)。

数据的共享性高、冗余度低、易扩充

数据面向整个系统,多用户共享,大大减少数据重复存储。

易扩充体现在可以随时增加新的应用而不必修改原有结构。

数据独立性高

通过后面要讲的“两级映像”实现,这是数据库的绝对核心优势。

数据由 DBMS 统一管理和控制

DBMS 提供了以下四个方面的控制功能:

安全性:防止非法用户存取。

完整性:保证数据的正确性、有效性和相容性(如年龄不能是负数)。

并发控制:防止多用户同时操作时产生数据不一致(如超卖)。

数据库恢复:在系统发生故障后,将数据恢复到一致状态(如基于日志的回滚)。

5.1.2 数据管理技术的演进(按数据模型分类)

数据模型是数据库系统的核心和基础。

任何 DBMS 都是基于某种数据模型的。

1. 第一代:非关系型(格式化模型)—— 层次与网状

层次模型

结构:

像一棵倒挂的树(有且只有一个根节点,其他节点有且只有一个父节点)。

本质是1:N(一对多)联系。

优点:结构简单,查询效率高。

缺点:

无法直接表达 M:N(多对多) 关系(必须通过引入冗余节点来转换);

查找子节点必须通过父节点,独立性较差。(代表:IBM的IMS)

网状模型

结构:

像一个图(允许一个节点有多个父节点,节点之间无严格层级)。

本质是可以表达 M:N(多对多) 关系。

优点:能够更直接地描述现实世界。

缺点:

结构极其复杂,用户必须了解系统底层的指针和存取路径,编写应用程序难度极大。

2. 第二代:关系模型 (RDBMS) —— 当前绝对主流

结构:严格的二维表格结构。

革命性优势:

概念单一。

无论是实体(如学生)还是实体间的联系(如选课),全部统一用“表”来表示。

用户完全不需要关心物理存储路径,只需用 SQL 语句告诉系统“要什么”,而不是“怎么找”。

理论基础:严格的数学基础(集合论和关系代数)。

具体SQL内容链接:

SQL学习文档-CSDN博客

3. 第三代:对象-关系模型 (ORDBMS)

背景:

传统关系模型只能处理简单的数据类型(数字、字符串),面对 CAD、多媒体(图像、视频)等复杂数据类型时显得力不从心。

特点:

在关系模型的基础上,吸收了面向对象方法的思想,增加了面向对象的复杂数据类型(如抽象数据类型、继承机制等)。

代表:PostgreSQL 原生支持,Oracle 也扩展了对象特性。

5.1.3 数据库系统三级模式与两级映像

ANSI(美国国家标准学会)提出了数据库系统的三级模式结构——数据独立性

1. 三级模式结构(从上到下,视角不同)

模式

视角

抽象

对应

定义

具体

用途

外模式(子模式)

用户

视图层(最高)

应用程序视图、部分基本表

用户能看到的数据视图

通过DML进行CURD数据库操作

简化终端用户与系统交互,保证数据保密性和安全性

模式(概念模式或逻辑模式)

整体

逻辑层(中间)

逻辑结构基本表

描述全部数据逻辑结构和特征

通过DDL定义结构(对库、表、视图等),不涉及具体值

存储什么数据,以及数据之间的关系

内模式(存储模式)

存储

物理层(最低)

物理结构存储文件

描述数据在物理介质上的存储方式和物理结构

底层数据的存储结构和存取方法

数据文件存盘位置、数据存储方式(顺序、B树、Hash方法)、数据是否加密压缩、表的索引等

外模式—— “用户看什么”

也叫用户模式或子模式。

它是数据库用户(包括应用程序员和最终用户)能够看见和使用的局部数据的逻辑结构和特征。

举例:

一个学校系统有“教务外模式”(看课表、成绩)、“财务外模式”(看学费、工资)、“后勤外模式”(看宿舍)。

不同用户看到的内容和权限是完全不同的。

数量:

一个数据库可以有多个外模式(对应不同用户群)。

一个外模式可以被多个应用共享。

模式—— “全局有什么”

也叫逻辑模式或概念模式。

它是数据库中全体数据的逻辑结构和特征的描述,是所有外模式的公共部分。

举例:

包含了学校数据库里所有的表结构(学生表、课程表、教师表、宿舍表等),不考虑这些表在物理上怎么存。

数量:

一个数据库只有一个模式。

它是数据库体系结构的中间层,也是 DBMS 模式定义语言(DDL)描述的核心。

内模式—— “底层怎么存”

也叫存储模式。

它是数据在数据库系统内部的物理存储结构和物理存取方法的描述。

举例:

学生表的数据是存放在 D盘 还是 E盘?

用的是 B+树索引 还是 哈希索引?

数据块的大小是多少?

数量:一个数据库只有一个内模式。

2. 两级映像(连接三级的桥梁,实现独立性的机制)

如果在模式中增加了一个字段,难道要重写所有用户的程序吗?

不需要,这就靠“映像”来缓冲。

外模式/模式映像(定义在外模式中描述)

作用机制:

当模式(全局逻辑结构)发生改变时(例如:把“学生表”拆分成“本科生表”和“研究生表”),数据库管理员(DBA)只需修改“外模式/模式映像”,就可以使外模式保持不变。

产生的效果:

因为外模式没变,应用程序是根据外模式编写的,所以应用程序不用修改。

结论:

保证了数据与程序的逻辑独立性(简称逻辑独立性)。

模式/内模式映像(定义在模式中描述,通常只有一个)

作用机制:

当内模式(物理存储结构或存取方法)发生改变时(例如:为了提高查询速度,把某个字段的索引从 B树 换成 哈希索引,或者换了存储硬盘),DBA 只需修改“模式/内模式映像”,就可以使模式保持不变。

产生的效果:

因为模式没变,外模式自然也不会变,所以应用程序不用修改。

结论:

保证了数据与程序的物理独立性(简称物理独立性)。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询