Skip to main content

任务三 数据库系统的结构

一、数据库系统模式

1. 基础概念:型 vs 值

概念定义示例
对某一类数据的结构和属性的说明学生记录型:(学号, 姓名, 性别, 系别, 年龄, 籍贯)
型的一个具体赋值记录值:(201315130, 张晓明, 男, 计算机系, 19, 河北省石家庄市)

2. 模式 vs 实例

概念定义特点关系
模式数据库中全体数据的逻辑结构和特征的描述• 仅涉及型的描述• 一个数据库只有一个模式• 稳定不变(反映数据结构及联系)模式可以有多个实例
实例模式的一个具体值• 涉及具体的数据值• 同一模式可有多个实例• 动态变化(反映数据库某一时刻状态)实例是模式的具体化

3. 示例说明

  • 学生选课数据库模式:包含学生记录、课程记录、学生选课记录的结构定义
  • 2023年实例:包含该年所有学生记录(如10000条)、课程记录、选课记录
  • 实例变化:2022年实例 ≠ 2023年实例;同一年的实例也会随时间变化(学生退学、转系等)

二、数据库系统的三级模式

1. 三级模式概述

  • 共同特征:大多数DBMS采用三级模式结构(早期微机小型系统除外)
  • 三级构成外模式 - 模式 - 内模式
  • 提供功能:两级映像功能

2. 三级模式详细说明

模式别名描述特点
模式逻辑模式全体数据的逻辑结构和特征描述,所有用户的公共数据视图中间层• 不涉及物理存储和应用程序细节• 一个数据库只有一个• 基于数据模型,统一所有用户需求
外模式子模式/用户模式用户能看见和使用的局部数据的逻辑结构和特征描述• 面向特定应用• 模式的子集一个数据库可以有多个保证安全性(用户只能访问对应外模式数据)
内模式存储模式数据物理结构和存储方式的描述,数据在内部的组织方式最底层一个数据库只有一个

3. 外模式重要特性

  • 多样性:不同用户可有不同外模式(结构、类型、长度、保密级别等均可不同)
  • 复用性:同一外模式可为某用户的多个应用系统使用
  • 单一性:一个应用程序只能使用一个外模式

三、数据库系统的二级映像功能与数据独立性

1. 二级映像概述

  • 目的:实现三级模式之间的联系和转换
  • 两层映像
    1. 外模式/模式映像
    2. 模式/内模式映像
  • 核心作用:保证数据的逻辑独立性物理独立性

2. 外模式/模式映像

  • 解决:外模式与模式之间的映射对应关系
  • 挑战:不同外模式可能存在冲突和不一致(如单位不同:厘米vs英寸)
  • 处理
    1. 集成所有外模式,映射为统一模式
    2. 规范化冲突,协调构造全局模式
  • 结果:建立多外模式到模式的确定对应关系

3. 模式/内模式映像

  • 解决:数据库模式存储到不同存储系统的问题
  • 内容:数据存储具体方式(数据类型存储定义、文件组织方式、索引实现等)
  • 特点
    • 同一模式可有不同映射(基于不同物理设备)
    • 对用户透明(只需关注数据访问,无需关心物理设备映射)

4. 数据独立性

独立性类型定义实现机制优点
逻辑独立性数据库模式改变时,外模式不需调整修改外模式/模式映像• 降低开发维护成本• 扩大数据应用范围• 提高适应性
物理独立性物理存储方式改变时,模式不需修改调整模式/内模式映像• 应用程序不受影响• 进一步提高适应性

5. 数据独立性的重要性

  • 分离数据与应用程序:通过映像保证联系
  • 显著优点:数据库系统最显著的特点之一
  • 合称数据独立性 = 逻辑独立性 + 物理独立性

知识体系总览与逻辑关系

三级模式结构图

应用程序1 → 外模式1 → 外模式/模式映像
应用程序2 → 外模式2 → 模式 → 模式/内模式映像 → 内模式(物理存储)
应用程序3 → 外模式3

核心逻辑链条

数据抽象:外模式(用户视图) ↔ 模式(全局逻辑) ↔ 内模式(物理存储)
↓ ↓
映像机制:外模式/模式映像 + 模式/内模式映像
↓ ↓
独立性:逻辑独立性 + 物理独立性

关键要点总结

  1. 型值分离:模式描述型,实例是具体值
  2. 三级分层:用户层(外模式)→ 逻辑层(模式)→ 物理层(内模式)
  3. 二级映像:连接三级模式的桥梁
  4. 双重独立:逻辑独立保护应用,物理独立适应存储变化
  5. 安全基础:外模式限制用户访问范围,保障数据安全

任务三构建了数据库系统的核心架构理论,解释了数据库如何通过分层和映像实现数据独立性,这是数据库系统优于文件系统的重要理论基础。