调侃数据库2.1:三级结构两层印象(简单不得了的教程)
2017-04-23 本文已影响145人
Dongle聊测试
调侃数据库,你看错了吗,23333,Let's go!
图片.png
上篇文章我们从DBMS方面入手,介绍了DBMS的环境,Roles,History等,今天,请做好准备,我们要玩Database
劝退图
请叫我劝退图,哈哈哈,相信调侃熊,我会用最简单的话来让你搞明白今天的内容
|Environment
- 数据库系统的目的是让人尽可能明白数据,他会以抽象视图方式向你展示数据,而数据如何存储在硬盘,如何读取bulabula全部藏起来
- DBMS的结构是依据一个叫“ANSI-SPARC”的东西,这个东西我们称之为三级结构两层印象---很重要的东西,后面会详细讲
||The Three-level ANSI-SPARC Architecture
Three-level ANSI-SPARC Architecture别告诉我你的眼神不是这样
you
别走开别走开,我们先从这几个单词学起,你就会发现很简单:
External level
- External level:看上图,找到对应位置,这个东西我们称之为外模式,对应着有conceptual level(模式),Internal level(内模式),名字高大尚的东西永远没有实质的内涵,他就是一个名字,代表的东西是这红圈圈里的东西,他提供给用户一个抽象的视图---这个视图二字我在前面提过,要多留意
conceptual level - Conceptual level:这个东西我们称之为模式,是数据库的公共视图,这里展示的是有什么数据,以及数据与数据之间的关系---注意我这里又提到了视图的概念
Internal level - Internal level:这一部分叫内模式,负责数据的存储
Three-level ANSI-SPARC Architecture以上就是单词的介绍,然后再反过来看整个东西
这就是所谓的三层架构,而两层印象你能猜猜是什么吗? 我在此处等你15秒
ok,我们继续,两层印象是说:这三个模式(内模式,模式,外模式)两两之间如何配合。比如外模式与模式,可以说外模式是内模式的简化内容,我们再来上一张图
实例请别晕,待我一步一步地分析
图片.png这个画红圈圈的部分请注意,您有没有想过,为什么蓝色的比绿色的框框少了很多东西,比如没有position,如果您能往这想,那方向就对了,这是因为我们人为地进行了筛选,因为user添加了筛选条件(我想看有多少18岁以上的少年,我就没必要知道性别吧)才使得外模式有分于模式,使得user只会看到外模式这一较抽象的视图
而模式与内模式:这部分由DBMS管理就可以了,DBA与DB真的无需多操心。补充一句,外模式又在操作层面称view(视图),模式在操作层面叫table(表),内模式在操作层面叫Index(索引)
DBMS负责维持两层印象的平衡。对应着文件系统的缺点,DBMS一个优点是数据高度独立性,因为在模式<-->外模式层次上,我在外模式随便改存储模式,他并不会影响到模式,而且:应用--》外模式--》模式,是这种情况,因此我只需要修改模式,如此的话外模式,引用程序都不必修改
可能今天的东西有点多,我们将Langeage等内容放在下面讲解,大家慢慢消化下吧,而且
小手一抖