前言

一个数据系统包含了很多部分。作为一个系统,不同的用户看到的信息也是不一样的。

比如一个学校,虽然最终数据都在一个数据库系统中,但是教师、学生、财务、院长能看到的内容、能进入的系统也是不一样的。一个航空公司,客服、财务、用户能看到的内容也是不一样的。

模式(Schema)是对数据库中数据所进行的一种结构性的描述,是观察的数据的结构信息。比如,学生抽象为(学号,姓名,性别,系别,年龄,籍贯),而不涉及具体的值如张三或者李四的详细记录值。模式的一个具体值称为模式的一个实例(instance),如张三的记录(1111222,张三,男,计算机系,19,北京市),实例那就是数据库的一个快照snapshot。

数据库系统的三级模式结构和两层映像可以将数据库恰当的切分开来,不同权限的用户看到的内容不同,而设计者和开发者则需要从全局角度进行理解和管理,另外数据的最后存储和运维也是需要考虑的。

一、三级模式

1.External Schema,外模式或者用户模式

即用户(包括应用程序员和最终用户)所能看到和处理的局部数据的逻辑结构和特征描述。重点是能看到。外模式通常是逻辑模式的子集,一个数据库可以由很多个外模式。例如学籍管理员只能看到学生注册、课程登记和成绩登记相关的数据,而收发人员可以看到收发管理相关的数据,看不到其他的数据。因此,外模式是保证数据库安全性的有力措施。

2.Conceptual Schema,概念模式或者逻辑模式

是从全局角度理解、管理的数据的结构描述,还包含了相应的关联约束。它是数据库系统模式结构的中间层,即不涉及数据的物理存储细节和硬件环境,也与具体的应用程序、所使用的的应用开发工具及高级程序语言无关。即,不管你要安装在浪潮服务器还是云上,操作系统使用CentOS或者Suse,应用程序是手机APP还是Web,使用Java还是Python ,与这个逻辑整体无关。

3.Internal Schema,内模式或存储模式

是数据物理结构和存储方式的描述,包含存储路径、存储方式、索引方式等。一个数据库只有一个内模式。例如,数据存储在磁盘还是主存储器,存储方式是堆存储还是按照某些属性升(降)序排列,或者按照属性值聚簇存储,是否压缩,如何加密存储等,数据存储记录定长还是变长等。

假设我们高数考了99分(多一分怕你骄傲),然后教师和你都能在学校网站查询到这个成绩(外模式),实际呢这个成绩是在一个提前定义好的成绩表里面的(概念模式),然后这个表的数据实际存储在逸夫楼的一层机房的第一个机架的一台X86服务器的磁盘(内模式)里。

二、两级映像

两层映像保证了数据库系统中的数据能够具有较高的逻辑独立性和物理独立性。

1、外模式/模式映像

外模式/模式的映像:实现外模式到概念模式之间的相互转换。

模式描述的是数据的全局逻辑结构,外模式描述的是数据的局部逻辑结构。对应于同一个模式可以有任意多个外模式。对于每一个外模式,数据库系统都会有一个外模式/模式映像,它定义了该外模式和模式之间的对应关系。这些映像定义通常包含在各自外模式的描述中。

当模式改变时(例如增加新的关系、新的属性、改变属性的数据类型等),由数据库管理员对各个外模式/模式的映像作相应改变,可以使外模式保持不变。应用程序是根据数据的外模式编写的,从而应用程序不用修改,保证了数据与程序的逻辑独立性,简称数据的逻辑独立性。

2、模式/内模式映像

模式/内模式的映像:实现概念模式到内模式之间的相互转换。

数据库只有一个模式,也只有一个内模式,所以模式/内模式映像是唯一的,它定义了数据全局逻辑结构与存储结构之间的对应关系。例如,说明逻辑记录和字段在内部是如何表示的。该映像定义通常包含在模式描述中。

当数据库的存储结构改变时(例如选用了另一种存储结构),由数据库管理员对模式/内模式映像作相应改变,可以使模式保持不变,从而应用程序也不必改变。保证了数据与程序之间的物理独立性,简称数据的物理独立性。

三、物理独立性与逻辑独立性

1.什么是数据的独立性?

数据的独立性是指数据与程序独立,将数据的定义从程序中分离出来,由DBMS(数据库管理系统)负责数据的存储,从而简化应用程序,大大减少应用程序编制的工作量。数据的独立性是由DBMS的二级映像功能来保证的。数据的独立性包括数据的物理独立性和数据的逻辑独立性。

2.什么是数据的物理独立性?

答:数据的物理独立性是指当数据库的内模式发生改变时,数据的的逻辑结构不变。由于应用程序处理的只是数据的逻辑结构,这样物理独立性可以保证,当数据的物理结构改变了,应用程序不用改变。但是,为了保证应用程序能够正确执行,需要修改概念模式/内模式之间的映像。

3.什么是数据的逻辑独立性?

答:数据的逻辑独立性是指用户的应用程序与数据库结构是相互独立的。数据的逻辑结构发生变化后,用户程序也可以不修改。但是,为了保证应用程序能够正确执行,需要修改外模式/概念模式之间的映像。

4.总结一下

通俗来讲就是如果改变了某个模式,只需要修改上一层的映像。即改变内模式,只需要修改模式/内模式映像(物理独立性),改变概念模式(逻辑结构),只需要修改外模式/模式映像(逻辑独立性)

————————————————

原文链接:https://blog.csdn.net/qq_40406061/article/details/79769799

原文链接:https://blog.csdn.net/JavaEEKing/article/details/109219756

原文链接:https://blog.csdn.net/maizi518/article/details/124966044

[数据库]三级模式-两级映像详解相关推荐

  1. 数据库模式——三级模式两级映像

    转载:https://www.cnblogs.com/xiehuan-blog/p/9033481.html 数据库模式 数据库系统是数据密集型应用的核心,其体系结构受数据库运行所在的计算机系统的影响 ...

  2. 数据库 三级模式 两层映像

    其实看完,还是没有了然于心的感觉 还是模模糊糊的===感觉还是有点没能特别理解清楚=== 先写着,以后再理解一下吧=== 网址1:http://www.cnblogs.com/kunpengit/ar ...

  3. 数据库模式(三级模式+两级映射)

    数据库模式(三级模式+两级映射)         美国国家标准协会(American National Standard Institute, ANSI)的数据库管理系统研究小组于1978年提出了标准 ...

  4. 数据库系统的三级模式两级映射

    模式:模式是数据库中全体数据的逻辑结构和特征的描述.(不涉及具体的值) 例如: 学生选课数据库模式: 学生(姓名,学号,专业班级) 课程(课程号,课程名,学分) 选课(学号,课程号,成绩) 注意:模式 ...

  5. 数据库结构与模式 - 三级模式 两级独立性/两级映射

    数据库技术中采用分级的方法将数据库的结构划分为多个层次.最著名的是美国 ANSI/ SPARC 数据库系统研究组 1975 年提出的三级划分法 数据库系统划分为三个抽象级:用户级.概念级.物理级. ( ...

  6. 数据库三级模式两层映射

    为什么会有三级模式?这里的话先解释一些这个东西,ANSI为了规范我们对数据库的使用,ANSI的数据库管理系统研究小组于1978年提出了标准化的建议,将数据库结构分为3级:面向用户或应用程序员的用户级. ...

  7. 数据库的三级模式结构和两级映像

    数据库的三级模式结构 请先把下面的关系记在心中. 外模式(应用)->概念模式(表结构)->内模式(物理) 外模式(external schema) 也称"用户模式"或者 ...

  8. 数据库系统结构——三级模式和两级映像

    数据库系统结构 一.数据库系统的三级模式结构:外模式.模式.内模式 名称 功能 定义和描述语言 模式(Schema)也称概念模式或逻辑模式 它是数据库总的框架,是对数据库中全体数据的逻辑结构和特性的描 ...

  9. 数据库系统中的三级模式、两级映像以及数据独立性(附绪论思维导图)

    三级模式.两级映像 1.绪论思维导图 2.数据库系统的三级模式结构 2.1.模式 2.2.外模式 2.3.内模式 3.数据库的两级映像功能 3.1.外模式/模式映像 3.2.模式/内模式映像 3.3. ...

最新文章

  1. 模板 - C++ STL
  2. python 学习之 PythonAdvance2
  3. hdu 4549 M斐波那契数列(费马小定理 + 二分快速幂 + 矩阵快速幂)
  4. 最in的一期,来自大厂的邀请|C课有道
  5. android os5.0 优点,Funtouch OS升级5.0 性能大幅提升
  6. 选课 topsort
  7. LearnETutorial 中文系列教程【翻译完成】
  8. Selenium-WebDriverApi介绍
  9. 使用MTL库求解最小二乘解
  10. CFA通关经验来喽,三级通过学霸教你如何拿下CFA!
  11. 基于Ricequant时间序列模型预测股价
  12. 苹果手机怎么投屏不了,苹果手机怎么投屏电脑
  13. win7计算机怎么重置,win7系统的电脑如何重置 win7重置电脑的方法
  14. 华为路由器GRE隧道配置
  15. 阿里云国际版如何将ECS云服务器中的数据备份到本地
  16. 关于PPP拨号的接入点
  17. 【企业信息化系列】如何以BPM流程平台为核心串联公司业务系统
  18. spring学习总结(二)
  19. Sql Server 字符串、日期函数 收藏
  20. Top 100 大学

热门文章

  1. 去掉h1 h2 h3 h4加粗并统一字体大小
  2. 【笔记】Echarts 通过自定义图标按钮,动态修改统计图颜色
  3. 随机游走(Random Walk)模型详解:历史||数学表示||物理意义
  4. WinCE:在Win7上连接WinCE手持设备
  5. springboot连接sqlserver 驱动程序无法通过使用安全套接字层(SSL)加密与 SQL Server 建立安全连接解决方法
  6. 保护水资源公益网站html,保护水资源公益海报世界水日宣传海报
  7. 介绍IQ调制解调的原理,阐述其在BPSK,QPSK,QAM等中的应用
  8. html5中如何分区,win7磁盘管理怎样给新硬盘分区
  9. 1分钟学会用Midjourney做自己的皮克斯风格的卡通形象
  10. 三种方法解决git拒绝连接问题fatal: unable to access xxxx: Failed to connect to xxxx : Connection refused