数据库系统概论(三)数据库系统的三级模式结构


前言

  • 在之前对数据库系统的学习中,我们了解了很多基础的概念和知识
  • 今天,我们将深入探讨数据库系统的三级模式结构,这是数据库设计和管理中非常重要的一部分内容
  • 理解三级模式结构有助于我们更好地组织、管理和使用数据库中的数据,提高数据库的性能和可维护性。

我的个人主页,欢迎来阅读我的其他文章
https://blog.csdn.net/2402_83322742?spm=1011.2415.3001.5343
我的数据库系统概论专栏
https://blog.csdn.net/2402_83322742/category_12911520.html?spm=1001.2014.3001.5482

一、模式的概念

在这里插入图片描述

  • 在数据库中,模式(Schema)是对数据库中数据的一种抽象描述,它定义了数据的结构、数据之间的关系以及数据的约束条件等。

简单来说,模式就像是一个蓝图,它规定了数据库中数据应该如何存储和组织。

例如,在一个学生信息数据库中,模式会定义学生表包含哪些列,如学号、姓名、年龄、性别等,以及这些列的数据类型(比如学号是整数类型,姓名是字符串类型等)。同时,模式还会定义一些约束,比如学号必须是唯一的,年龄必须在一个合理的范围内等。

模式并不包含具体的数据,它只是对数据的一种规范和定义。不同的数据库管理系统可能会有不同的方式来定义和管理模式,但总体的概念是相似的。

在这里插入图片描述

二、三级模式结构

数据库系统的三级模式结构包括外模式、模式和内模式。

  1. 外模式(External Schema)也称为子模式或用户模式,它是用户与数据库系统的接口。外模式是特定用户所看到的数据库中的数据视图,它可以根据不同用户的需求和权限,定义不同的数据子集和数据操作。

比如,学校的教务管理人员可能只需要看到学生的成绩、选课信息等;而学生本人可能只能看到自己的个人信息、成绩等。这些不同的视图就是通过外模式来定义的。外模式可以提高数据的安全性,因为它可以限制用户只能访问他们有权限访问的数据。

  1. 模式(Schema):前面我们已经提到了模式的概念,这里的模式是数据库中全体数据的逻辑结构和特征的描述。它是一种全局模式,定义了数据库中所有数据的结构、关系和约束,是数据库设计的核心

模式独立于具体的应用程序和存储设备,它只关心数据的逻辑结构。例如,在一个图书管理数据库中,模式会定义图书表、读者表、借阅记录表等之间的关系,以及每个表的列和约束。

  1. 内模式(Internal Schema):也称为存储模式,它描述了数据在数据库内部的存储方式和物理结构内模式涉及到数据的存储位置、存储格式、索引结构等

比如,数据可能以文件的形式存储在磁盘上,内模式会定义这些文件的组织方式,是顺序存储还是索引存储等。内模式的设计会影响数据库的性能,合理的内模式设计可以提高数据的存取效率。

三、两级映像与数据独立性

在这里插入图片描述

在数据库系统的三级模式结构中,存在两级映像,即外模式/模式映像和模式/内模式映像,它们保证了数据的独立性

  1. 外模式/模式映像:这个映像定义了外模式和模式之间的对应关系。当模式发生变化时(比如增加了一个新的列或者修改了数据的约束条件),只要修改外模式/模式映像,就可以保持外模式不变,从而使得应用程序不需要进行修改。这就是数据的逻辑独立性,即数据的逻辑结构的变化不会影响应用程序的运行。

  2. 模式/内模式映像:该映像定义了模式和内模式之间的对应关系。当内模式发生变化时(比如更换了存储设备或者改变了数据的存储结构),只要修改模式/内模式映像,就可以保持模式不变,进而应用程序也不需要修改。这就是数据的物理独立性,即数据的物理存储结构的变化不会影响应用程序对数据的使用。

通过两级映像和数据独立性,数据库系统可以更好地适应变化,提高系统的可维护性和稳定性

总结(核心概念速记):

核心概念速记
数据库系统的三级模式结构 = 数据库的"架构指南"

  • 模式概念:对数据库数据的抽象描述,规定数据存储和组织规范,不包含具体数据。
  • 三级模式:
    • 外模式(子模式/用户模式):用户与数据库接口,特定用户数据视图,提高数据安全性。
    • 模式:全体数据逻辑结构和特征描述,全局模式,数据库设计核心,独立于应用和存储设备。
    • 内模式(存储模式):描述数据存储方式和物理结构,影响数据库性能。
  • 两级映像与数据独立性:
    • 外模式/模式映像:保证数据逻辑独立性,模式变化时可保持外模式和应用程序不变。
    • 模式/内模式映像:保证数据物理独立性,内模式变化时可保持模式和应用程序不变。

三级模式结构对比

模式 主要定义 关键作用 注意事项
外模式 特定用户数据视图 提供用户接口,限制数据访问 依用户需求和权限定义
模式 全体数据逻辑结构 定义数据结构、关系和约束 独立于应用和存储
内模式 数据存储方式和结构 影响数据存取效率 合理设计提高性能

映像与独立性图解

外模式 —— 外模式/模式映像 —— 模式 —— 模式/内模式映像 —— 内模式
   │                  │                     │
   └──── 逻辑独立性 ───┘                     └──── 物理独立性 ───┘

知识图谱

数据库系统概论(三)数据库系统的三级模式结构
├─ 模式的概念
│  ├─ 定义:对数据的抽象描述,规定存储和组织规范
│  ├─ 示例:学生信息数据库的表结构和约束
│  └─ 特点:不包含具体数据,不同系统定义方式有别
├─ 三级模式结构
│  ├─ 外模式:用户接口,特定数据视图,提高安全性
│  ├─ 模式:全体数据逻辑描述,数据库设计核心
│  └─ 内模式:数据存储方式和物理结构,影响性能
├─ 两级映像与数据独立性
│  ├─ 外模式/模式映像:保证逻辑独立性
│  ├─ 模式/内模式映像:保证物理独立性
│  └─ 作用:适应变化,提高可维护性和稳定性
└─ 核心要点
   ├─ 三级模式结构是数据库设计重要部分
   └─ 两级映像保障数据独立性,增强系统适应性

以上就是这篇博客的全部内容,下一篇我们将继续探索更多精彩内容。

我的个人主页,欢迎来阅读我的其他文章
https://blog.csdn.net/2402_83322742?spm=1011.2415.3001.5343
我的数据库系统概论专栏
https://blog.csdn.net/2402_83322742/category_12911520.html?spm=1001.2014.3001.5482

非常感谢您的阅读,喜欢的话记得三连哦

在这里插入图片描述