【软考系统架构师】数据库三大模式:外模式、概念模式和内模式

数据库的三种模式包括内模式(存储模式),概念模式(逻辑模式)和外模式(用户模式)。内模式描述数据的物理存储结构,概念模式定义数据的逻辑结构,而外模式则为用户提供了数据的局部视图。设置这些模式旨在高效利用存储空间,解析数据,以及满足不同用户的展示需求和数据安全性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

1 数据库的三种模式

1.1 内模式

1.2 概念模式

1.3 外模式

2 为什么要设置这些模式

2.1 物理层

2.2 概念层

2.3 用户层

1 数据库的三种模式

1.1 内模式

也称存储模式(Storage Schema),内模式是整个数据库的最低层表示,不同于物理层,它假设外存是一个无限的线性地址空间,内模式定义的是存储记录的类型、存储域的表示以及存储记录的物理顺序,指引元、索引和存储路径等数据的存储组织。

例如,记录的存储方式是顺序存储、按照B树结构存储还是按hash方法存储;索引按照什么方式组织;数据是否压缩存储,是否加密;数据的存储记录结构有何规定)。一个数据库只有一个内模式。

关键点:

一个数据库只有一个内模式; 

一个表可能由多个文件组成,如:数据文件、索引文件。 它是数据库管理系统(DBMS)对数据库中数据进行有效组织和管理的方法

 

1.2 概念模式

概念模式(也称模式、逻辑模式)用以描述整个数据库中数据库的逻辑结构,描述现实世界中的实体及其性质与联系,定义记录、数据项、数据的完整性约束条件及记录之间的联系,是数据项值的框架。

数据库系统概念模式通常还包含有访问控制、保密定义、完整性检查等方面的内容,以及概念/物理之间的映射。

概念模式是数据库中全体数据的逻辑结构和特征的描述

关键点:一个数据库只有一个概念模式。

1.3 外模式

也称子模式(Subschema)或用户模式,是数据库用户(包括应用程序员和最终用户)能够看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图,常常是与某一应用有关的数据的逻辑表示。这种处理方式不仅可以提高数据对用户的价值,同时还可以保证数据的安全。

关键点: 一个数据库可以有多个外模式

2 为什么要设置这些模式

示意图

为什么要设置内模式呢,上图概念化的说明了

2.1 物理层

大家都知道数据库设计就是要高效的利用数据,这里的利用包括存储和查看,对于物理层面,需要考虑的是如何高效的利用有限的物理存储空间,例如减少数据冗余,减少存储空间浪费,同时向上提供高效的查询方法,为了达到这个目标,数据真实存放在物理设备(如磁盘)上时可能就是0-1-0-1紧密排布的。

但是向上图中紧密排布的数据有两个问题:

1、数据如何解析,到底是什么含义

2、这种对用户来说是非常不友好的,用户需要友好的数据展示界面

2.2 概念层

对于问题1,就相当于现在需要一套如何解析这些数据的规则概念,例如我们可以把8bit解析成一个正整数即00000001=1,也可以用16个bit解析为一个正整数即0000000100000001=257,此时数据和整数这个概念(整数实际上也是一个数据模型)取得了联系,这就是概念层需处理的问题了。

 

2.3 用户层

在用户层,用户可能需要如下图左侧的2行1的展示形式,也可能有用户需要下图中间4行1的展示形式。因此需要对同样的数据的展示形态进行管理,以提升数据对用户的价值。

因为展示的需求是多种多种多样的因此用户模式(外模式)可以有许多种。

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

陈小房

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值