码迷,mamicode.com
首页 > 其他好文 > 详细

2015下半年软件设计师考点,难点3

时间:2016-10-23 11:32:07      阅读:162      评论:0      收藏:0      [点我收藏+]

标签:逻辑   综合   detail   技术   逻辑性   使用   9.png   三级   原子性   

数据库三级模式

  包括:外模式、模式和内模式。用户级对应外模式,概念级对应模式,物理级对应内模式

  技术分享技术分享

  在一个数据库系统中,只有唯一的数据库, 因而作为定义 、描述数据库存储结构的内模式和定义、描述数据库逻辑结构的模式,也是唯一的,但建立在数据库系统之上的应用则是非常广泛、多样的,所以对应的外模式不是唯一的,也不可能是唯一的。

  应用视图根据外模式进行数据操作,通过外模式一模式映射,定义和建立某个外模式与模式间的对应关系,将外模式与模式联系起来,当模式发生改变时,只要改变其映射,就可以使外模式保持不变,对应的应用程序也可保持不变;(逻辑性)

  通过模式一内模式映射,定义建立数据的逻辑结构(模式)与存储结构(内模式)间的对应关系,当数据的存储结构发生变化时,只需改变模式一内模式映射,就能保持模式不变,因此应用程序也可以保持不变。(物理性)

 

数据库规范化

1.第一范式(1NF):最起码的要求。不满足,则不能称为关系数据库

  属性不可分。是对属性的原子性约束,要求属性具有原子性,不可再分解

2.第二范式(2NF):符合1NF,并且非主属性完全依赖于码(可以唯一确定一个元组的某个属性或者属性组)。对记录的惟一性约束,要求记录有惟一标识,即实体的惟一性,更通俗说有主键ID

3.第三范式(3NF):符合2NF,并且,消除传递依赖。是对字段冗余性的约束,即任何字段不能由其他字段派生出来,它要求字段没有冗余。

  没有数据冗余的数据库并不一定是最好的数据库,所以有没有冗余的设计,要综合来考虑。

4.BC范式(BCNF):符合3NF,并且,主属性不依赖于主属性。若关系模式属于第三范式,且每个属性都不传递依赖于键码,则R属于BC范式。

  每个非平凡依赖的左边必须包含键码;每个决定因素必须包含键码。

  既检查非主属性,又检查主属性。当只检查非主属性时,就成了第三范式。满足BC范式的关系都必然满足第三范式。

  若一个关系达到了第三范式,并且它只有一个候选码,或者它的每个候选码都是单属性,则该关系自然达到BC范式。

  一般,一个数据库设计符合3NF或BCNF就可以了。

5.第四范式(4NF):要求把同一表内的多对多关系删除。

  在BCNF的基础上增加一些逻辑,以确保每多值依赖均依赖于超键(superkey)

6.第五范式(5NF):从最终结构重新建立原始结构。

  4NF的基础上,表的每个连接依赖是候选键的结果

总结:

  技术分享

 

数据库系统的体系结构

1.集中式数据库系统:  

  数据集中,数据管理集中。数据库系统的所有功能,从形式的用户接口到DBMS核心都集中在DBMS所在的计算机上。技术分享

2.客户端/服务器体系结构

  客户端与服务器CPU之间的职责明确,客户端主要负责数据表示服务,而服务器主要负责数据库服务。包括:事务服务器(查询服务器)、数据服务器

3.并行数据库系统

  多个物理上连在一起的CPU。包括:共享内存式多处理器、无共享式并行体系结构

  技术分享技术分享

4.分布式数据库系统:DDBMS,distributed database management system

  多个地理上分开的CPU。包括:物理上分布、逻辑上集中的分布式结构;物理上分布、逻辑上分布的分布式数据库结构

  数据透明性:对于用户而言,不需要知道数据的存储情况、分片情况、位置情况

  (1)分片透明性:是分布透明性的最高层次,完全分布透明不考虑数据的逻辑分片(全局视图、分片视图之间)

    不考虑关系是如何分片及具体的分片情况,就可以对全局关系进行操作

    只对全局关系进行操作而不必考虑数据的分片。当分片模式改变时,只要改变全局模式到分片模式的映像(图11-1中的映像2),而不影响全局模式和应用程序。全局模式不变,应用程序不必改写,这就是分片透明性

    在分布式数据库中,全局数据库是由各个局部数据库逻辑组合而成,反之,各个局部数据库是由全局数据库的某种逻辑分割而得.

  (2)位置透明性:中级分布透明。不考虑逻辑片段存储在哪个具体的位置。用户无法判别资源在系统中的物理位置,这是通过命名来实现的;(分片视图、分布视图之间)

    全局关系分割为分片后,要把分片定位到各个节点上,使每一分片至少有一个节点地址。如果应用程序中不必包括数据的节点地址,称为系统的位置透明性,应用程序中只提供要访问的关系名或分片名,节点地址由系统从数据字典中查出。具有位置透明性的系统,分片在节点间有移动时只要改变数据字典中的登录数据,不影响应用程序的可用性。

  (3)本地透明性(局部数据模型透明性):低级分布透明。向用户屏蔽的只是本站点的具体数据库存储及其管理情况。(分配视图、局部概念视图之间)

    在异构的情况下,这种透明性避免了用户对不同数据模型转换的实现

    不关心数据的具体组织形式。3中透明方式中最低的

  技术分享技术分享

 

 

  (4)复制透明性:不考虑数据的副本存放在哪儿及那几个具体的节点

  (5)访问透明性:对不同的数据表示形式以及资源访问方式的隐藏;

    (6)迁移透明性:资源的移动不会影响该资源的访问方式;

  (7)重定位透明性:资源在接受访问的同时进行重定位,而不引起用户和应用程序的注意;

  (8)并发透明性:访问共享资源的时候,让任何一个用户都不会感觉到他人也在使用自己正使用的资源;

  (9)故障透明性:用户不会注意到某个资源无法正常工作,以及系统随后从故障中恢复的过程。

 

2015下半年软件设计师考点,难点3

标签:逻辑   综合   detail   技术   逻辑性   使用   9.png   三级   原子性   

原文地址:http://www.cnblogs.com/panpanwelcome/p/5989160.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!