分布式数据库的复制和分片_第1页
分布式数据库的复制和分片_第2页
分布式数据库的复制和分片_第3页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、分布式数据库的复制和分片Analysis of data replication and fragmentation in Distributed DatabaseYAN Qiu-ling1, ZHU Jun-tao2(1.College of Information Science and Technology, Henan University of Technology ,Zhengzhou 450001,China;2.Zhengzhou Railway vocational and Technical College, Zhengzhou 450052,China): This pa

2、per compares distributed database with centralized database, and anaysises the problems in the storage and access speed of centralized database. In this paper, we give the concept of data replication and fragmentation in distributed database ,as well as principles and methods. Finally, we analysis t

3、he key problems data replication and fragmentation solved.1 引言 在集中式数据库中,将所有数据集中存储到一台计算机上, 由主机上的数据库管理系统统一管理整个数据库, 用户可从终端 上发出数据操作命令,经主机上的数据库管理系统接收处理后, 将结果数据返回给用户。 随着企业规模越来越大, 企业分布于物 理位置不同的多个地方, 尤其是一些跨国公司, 在全球有很多的 分公司。 采用集中式数据库的体系结构, 位于多个位置的站点要 访问一个存放数据的主机,这样,对主机的要求 1 就很高:首 先,当企业规模很大,数据量很大时,数据仅仅存放在一台计算

4、 机上,该计算机的存储空间就要求很高, 通常是一个中型机或者 小型机,而这样的配置通常费用会很高。其次,当多个计算机同 时访问该主机时,会造成访问速度很慢,性能下降,这种速度有 时甚至是难以忍受的。最后,过多的依赖于中间的主机节点,一 旦该节点出现故障,会使整个系统处于崩溃状态。2 分布式数据库的特点基于上面的这些原因, 集中式的结构不能适应当前的物理位 置上分散的要求。 分布式数据库是物理上分散而逻辑上集中的数 据库系统。它有这样的一些优点: 1)物理分布性 数据按照就近 原则,存放在距离它最近的一个或者多个站点; 2)逻辑整体性 虽 然数据存放在各个不同的站点,但将各个站点的数据集合起来,

5、 仍然是集中式中的整个数据库中的数据; 3)站点的自治性 相互 的站点之间不存在主从关系, 地位是平等的, 任何一个站点出现 问题,不影响其它站点, 每个站点上的数据由本地的数据库管理 系统来进行管理。分布式数据库系统通过把分布在计算机网络的不同结点或 场地 ,物理上属于多个数据子集,逻辑上属于同一系统之数据集 合的海量数据实现数据应用, 以实现比集中式数据库系统更好的 性能、可扩充性、可用性和自治性。从数据意义上讲,数据分布 即数据分片与分配的合理与否或者说合理性的高低, 不仅影响着 访问的局部性, 即尽可能地把用户要求访问的数据就在本结点或 本场地,而且也制约着数据查询及事务处理的效率。要

6、实现分布式系统,必须要对数据进行复制和分片 2 。所 谓复制,就是将数据存放在多个站点上,这样,在一个站点出现 故障时, 可以通过访问存放在另外站点上的副本,仍然可以正常工作。 分片就是系统把数据划分为几个片, 各片存储在不同的分 片上。在实际应用中,通常是将两者结合在一起,先对数据进行 分片,然后将分片进行复制。3 数据复制和分片3.1 数据复制和分片的目的将数据进行分片和复制后存放在多个站点上 3 ,当一个站 点发生故障时, 整个系统仍然可以正常工作, 提高整个系统的可 用性和可靠性。3.2 数据分片的原则 4设全局关系R被划分为逻辑片段S=S1,S2,,Sn,贝U S满 足:1)完整性:

7、所有的分片 S1, S2,,Sn应该可以组合成一 个整体 S;2)不相交性:各个分片都应该是不相交的;3) 重构性:所有的分片应该可以重构成原来的关系R。3.3 分片的方法通常有两种基本的方法:水平分片和垂直分片。1) 水平分片:一个表 T被分成若干片:T1, T2,,Tn, 其中每个片包含T的一部分行并且T的每一行都会出现在一个片 中。2) 垂直分片:一个表 T被分成若干片:T1 , T2,,Tn, 每片包含T的一部分列。每一列必须至少被一个片包含,并且每 个片必须包含候选码的列。 (值得注意的是,在垂直分片中,为 了以后可以重构的需要, 必须在每个分片中包括候选键的属性列 5 。)4 数据

8、分配4.1 数据分配所谓数据分配, 就是将分片的数据放在多个站点, 利用冗余 6 来达到系统的最大可用性和可靠性。将分片的副本放在多个 站点,当本地系统要访问数据时, 首先判断该数据是本地的数据 还是其他站点的数据, 如果是本地的数据, 就直接可以在本地进 行读取。 这样就缩短了系统的响应时间。 当要访问的数据的站点 发生故障不可用时, 系统可以直接访问其副本所在的站点, 以此 来达到系统的最大可用性。4.2 数据分配的原则1)处理局部性 将数据尽量放在本地站点及其相邻的站点, 这样可以在一定程度上减少站点之间的通信代价。2)各个站点负荷的平衡性 使各个站点的负荷 (各个站点所 负担的全局任务

9、和局部任务) 均匀化, 提高各站点的本地和全局 应用,尽量提高各站点的并行性。5 数据透明性数据透明性是指对于用户而言, 并不需要知道数据的存储情 况,分片情况以及位置情况。数据透明性包括三个方面:1)分片透明性 (fragmentation transparency) 指的是用户 或应用程序不用去考虑关系是如何分片以及具体的分片情况, 就 可以对全局关系进行操作;2)复制透明性 (replication transparency) 指的是用户并 不需要知道数据的副本存放在哪个或哪几个站点;3) 位置透明性 (location transparency) 指的是用户或者应 用程序不用去考虑逻辑

10、片断存储在哪个具体的结点。6 数据复制和分片产生的问题分布式数据库中, 进行数据复制和分片可以有效的提高物理 分散站点之间访问的速度, 提高系统的可用性。 但是也产生了如 何保持多个分布的一致性和副本更新的一致性 7 ,以及事务管 理的问题。1)保持多副本的一致性:保持多副本的一致性,也就是使 得当对一个数据进行更新时, 要保证其所有的副本的数据也得到 更新,并且所有的副本的数据是一致的。进行数据的复制,提高 了读操作的性能, 在很大程度上保证了站点的可用性, 但是却增 加了更新时的开销,从而造成系统效率下降。2)保持分布的一致性:数据被更新之后,使得数据的原有 分片不再从逻辑上是一个整体。 比如将全校学生按照系别进行分 片,数学系的张三因为转系到计算机系, 导致其系别属性值变为 “计算机”,而他的信息因为分片的原因,仍然存放在“数学 系”的分片中。导致“数学系”的分片从逻辑上不在是一个整 体。3)分布事务管理:由于数据是分布在不同站点的,对数据 的更新操作也应该是分布的,这涉及到并发控制和恢复的问题。 也就是保证对数据进行更新时, 要把所有的数据都更新。 一旦有 一个副本没有更新,那么整个事务处理失败。7 结束语 分布式数据库系统符合当今社会发展的趋势,为物理上分 散,逻辑上集中的企业提供了很好的体

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论