分布式数据库系统体系结构

1)分布式数据库系统概述

定义

分布式数据库系统(DDBS)是指数据存放在计算机网络的不同场地的计算机中,每个场地都具有自治处理能力并且可以完成局部应用,而且每一个场地也参与全局应用程序的执行,全局应用程序可以通过网络通信访问系统中多个场地的数据。其定义强调分布性逻辑整体性两点。

与集中式系统的区别
集中式数据库系统是指数据库中所有数据都集中储存在一台计算机上,数据的处理也集中在一台计算机上。分布式数据库系统是把分散在各处的数据库系统通过网络通信连接起来形成的系统。

特点

分布式数据库系统特点如下:

  1. 数据独立性:除了具有常规的逻辑独立性与物理独立性外,还具有数据分布独立性。
  2. 集中与自治相结合的数据结构:各局部的DBMS可以独立的管理局部数据库,具有自治功能;系统也设有集中控制机制,协调各局部DBMS的工作,执行全局应用。
  3. 适当增加了数据冗余度:通过适当增加数据冗余可以方便检索,减少通信代价,提高系统的查询速度。
  4. 全局的一致性:可串行性和可恢复性

优缺点

优点:
1)具有灵活的体系结构
2)适应分布式的管理和控制机构
3)系统可靠性高
4)局部应用的响应速度快
5)可扩展性好,易于集成现有系统
6)经济性能优越
缺点:
1)系统开销大,主要花在通信部分
2)存取结构复杂
3)数据的安全性与保密性较难处理

数据共享

分布式数据库系统数据共享有以下两个层次:
1)局部共享:在局部数据库存储局部场地上各用户共享的数据,这些数据是本地用户常用的。
2)同构异质型DDBS:在分布式数据库系统的各个场地也存储供其他场地的用户共享的数据,支持系统的全局应用。

分类

分布式数据库系统可以分为以下3中类型:
1)同构同质型DDBS:各场地采用同一类型的数据模型(比如都是关系型),并且都是同一型号的数据库管理系统。
2)同构异质型DDBS:各个场地采用同一类型的数据模型,但是数据库管理系统不是同一型号。(譬如:SQL/DS,DB2,ORACLE等)
3)异构型DDBS:各个场地的数据模型是不同的类型。

2)分布式数据库系统体系结构

数据存储

分布式数据储存分为数据分布数据分片
数据分布:
数据分布也称为“数据分配”,是指数据在计算机网络各场地上的分配策略。数据的分配策略主要有:

  1. 集中式:所有数据均安排在同一个场地。
  2. 分割式:所有数据只有一份,分割安置在若干个场地。
  3. 全复制式:数据在每个场地重复存储。
  4. 混合式:数据库分为若干个可相交的子集,每个子集安置在一个或多个场地上,但是每一个场地未必保存全部数据。

数据分片
分布式数据库,一般数据存放的单位是片段而不是关系,这既有利于按照用户的需求较好的组织数据的分布,也有利于控制数据的冗余度。数据分片的主要方式有:

  1. 水平分片:按照一定的条件把全局关系按行分为若干不相交子集,每个子集为关系的一个片段。
  2. 垂直分片:把每一个全局关系的属性集分为若干子集,在子集上做投影运算,每个投影为垂直分片。
  3. 导出分片:又称为导出水平分片,即水平分片的条件不是本关系属性的条件,而是其他关系属性的条件。
  4. 混合型分片:按水平或垂直分片方式得到的片段继续按另一种方式进行分片。
    数据分片
    无论哪种分片方式都应满足以下条件:
    1) 完备性:一个全局关系中的数据必须完全的划分为若干片段,不允许某些数据属于全局关系但不属于任何一个片段。
    2)不相交性:不允许一个全局关系的某些数据既属于该全局关系的某一个片段,又属于另一个片段。
    3)可重构性:可以由片段重构全局关系,对于垂直分片可以用连接操作重构全局关系,对于水平分片,可以用并操作重构全局关系。

模式结构

下图所示的分布式数据库系统模式结构,从整体上可以分为两大部分:下部是集中式数据库系统的模式结构,代表了各局部场地上局部数据库系统的基本结构,上部分是分布式数据库系统增加的模式级别,其中包括:
1)全局外模式:是全局应用的用户视图,是全局概念模式概念的子集
2)全局概念模式:定义了分布式数据库系统的整体逻辑结构,使得数据如同没有分布一样。
3)分片模式定义片段以及全局关系与片段之间的映像。(一对多,一个全局关系对应多个片段)
4)分布模式:片段是全局关系的逻辑部分,一个片段在物理上可以分配到网络的不停结点上,分布模式定义片段的存放结点,根据分部策略选择定义片段的存放场地。
5)局部概念模式:定义了分布式数据库中局部数据的逻辑结构
6)局部内模式:定义了分布式数据库中局部数据的物理结构
分布式数据库系统模式结构

分布透明性

分布透明性是指用户不必关心数据的逻辑分片,不必关心数据物理位置分配的细节,也不必关心各个场地上数据库的数据模型。所以分布透明性包括3三个层次:
1)分片透明性:指用户或应用程序只对全局关系进行操作而不必考虑关系的分片,当分片模式改变了,由于有全局概念模式到分片模式的映像存在(映像2),全局模式不变,应用出现不必改写
2) 位置透明性:是指用户和应用程序不必知道片段的存储场地。当存储场地改变,由于分片模式到分布模式的映像存在(映像3),应用程序不必改写
3)局部数据模型透明性:是指用户和应用程序不必了解局部场地上使用的是那种数据模型,模型的转换以及数据库语言的转换均由映像4完成。

分布式数据库管理系统

分布式数据库系统如下图所示,主要功能包括:接收用户请求,访问网络数据字典,数据的分布式处理,协调局部DBMS与其他计算机的DBMS,在异构型分布式环境中,提供数据与进程移植的支持等。
在这里插入图片描述
分布式数据库系统的组成如下:
1)查询子系统;
2)完整性子系统;
3)调度子系统;
4)可靠性子系统;
分布式数据库系统存在的问题如下:
1)不同场地的通信速度,与局部DBS的存储部件的存取速度相比,是非常慢的。
2)通信系统有较高的存取处理延迟。
3)在CPU上处理通信的代价很高。
4)不同通信系统有不同意义的字符,数据的转换速度不一样,可能会相差1000倍,存取延迟也可能相差1000000倍,所以一个设计方案可能只能被一个系统接受。

3)分布式查询处理

查询处理的传输代价

在分布式查询中,数据传输是衡量查询时间的主要指标,不同查询处理技术差别很大。
在集中式数据库中,查询执行开销为:I/O代价+CPU代价;
在分布式查询数据库中,查询执行开销为:I/O代价+CPU代价+通信代价;

连接查询的优化

分布式DBS的数据分布在各个场地,查询过程中,为了减少数据网络传输量,提高查询速度,需要连接查询优化,主要有两种策略:
1)使用半连接来缩减关系(或片段)进行节省传输开销;
2)直接使用连接的查询优化方案;

  • 12
    点赞
  • 46
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值