数据同步方法、数据同步装置及分布式系统制造方法及图纸

技术编号:10820999 阅读:114 留言:0更新日期:2014-12-26 02:09
本发明专利技术公开了一种数据同步方法、数据同步装置及分布式系统,管理节点获取指示对所述第一数据中心和所述第二数据中心的路由信息进行更新的路由更新消息,其中,所述路由信息中至少包含所述第一数据中心和所述第二数据中心的标识信息以及所述第一数据中心和所述第二数据中心中各节点的备份路由信息;所述管理节点根据所述路由更新消息,调整所述第一数据中心和所述第二数据中心的路由信息;所述管理节点将调整后的所述第一数据中心和所述第二数据中心的路由信息同步到所述第一数据中心和所述第二数据中心中,以使所述第一数据中心和所述第二数据中心基于所述调整后的路由信息,对管辖的各个节点的数据进行同步传输。

【技术实现步骤摘要】

本专利技术涉及数据存储领域,具体涉及一种数据同步方法、数据同步装置及分布式系统
技术介绍
随着大数据技术的发展,为了有效解决数据集中带来的风险和访问延时的问题,通常是基于分布式系统来构建包括服务数据中心和备份数据中心的多数据中心,并实时确认所述多数据中心中的每一个数据中心及其数据中心内部的服务器的运行状况,以服务数据中心为例,在某个服务数据中心不能正常运行时,基于就近原则将后续用户的访问导向另一个正常运行的服务数据中心;以及在某个服务数据中心的一个服务器不能正常运行时,同样基于就近原则将后续用户的访问导向该服务数据中心的另一服务器中,然而在多数据中心情况下,为了能够容灾和就近访问的需要,对于备份数据中心按照一致性性要求同步来自服务数据中心的数据,必然导致服务数据中心和备份数据中心之间的信息进行交互,一旦所述多数据中心的交互的信息很多时,必然会导致数据中心之间的封闭性变差,从而降低了各个数据中心之间的独立性,若通过转发的方式来保证数据中心之间的封闭性时,由于转发节点需要转发所述多数据中心的所有的同步数据,而所述转发节点的转发效率是具有瓶颈的,必然会出现瓶颈效应,从而导致所述多数据中心的同步数据的传输也会出现瓶颈效应。其中,在分布式系统中,通常使用一致性哈希(hash)环实现对数据的分片存储和分片查询,按照所述一致性hash环包含的多段range(连续的取值范围)来实现分片,以一个数据中心为例,具体如图1所示,该数据中心包含节点11、节点12、节点13和节点14这四个节点,其中的每一个节点由一个或多个服务器组成,一致性hash环10的取值范围为0-2^128,其中,节点11映射在一致性hash环10上的A位置,节点12映射在一致性hash环10上的B位置,节点13映射在一致性hash环10上的C位置,节点14映射在一致性hash环10上的D位置,使得节点11映射的一段range为[D,A),节点12映射的一段range为[A,B),节点13映射的一段range为[B,C)和节点14映射的一段range为[C,D),而且所述四个节点中的每一个节点的数据均在至少一个另一节点中进行备份,例如节点11中的数据备份在节点12中,也可以在节点12、节点13和节点13的每一个节点中都进行备份,使得在一个节点不能正常运行时,防止数据出现丢失的情况。现有技术中提出通过中转节点来实现多数据中心中的数据同步和基于同一DHT(DistributedHashTable,分布式哈希)环来实现多数据中心中的数据同步,其中,Oracle的Data Guard以及mysql数据库都是通过数据中心之间构建中转节点群来实现多数据中心中的数据同步,使得所述多数据中心中的所有的数据传输都需要通过所述中转节点群来进行传输,但是随着用户终端的数量增加的越来越多,使得需要所述中转节点群来中转的数据量也越来越大,必然导致所述中转节点群出现瓶颈效应。其次,在基于同一DHT环来实现多数据中心中的数据同步时,所述多数据中心的所有节点映射为一个DHT环,使得所述多数据中心的各个节点能够在用户大量操作请求的情况下,通过所述各个节点来分担大量的数据中心之间的同步请求压力,具体以cassandra数据库为例,参见图2,数据中心21和数据中心22都映射在一个DHT环20上,其中,数据中心21包含节点23映射的一段range为[D,A)、节点25映射的一段range为[E,B)、节点27映射的一段range为[F,C)和节点29映射的一段range为[G,D),数据中心22包含节点24映射的一段range为[A,E)、节点26映射的一段range为[B,F)和节点28映射的一段range为[C,G),当用户的操作请求的哈希值落在range区间[D,A)上时,节点23来响应所述操作请求,在节点23中的数据有变化时,需要将变化的数据备份到节点24中,由于节点23属于数据中心21而节点24属于数据中心23,从而使得数据中心21和数据中心22出现进行交互;当所述操作请求的哈希值落在range区间[B,F)上时,节点26来响应所述操作请求,在节点26中的数据有变化时,需要将变化的数据备份到节点27中,由于节点26属于数据中心22而节点27属于数据中心21,导从而使得数据中心21和数据中心22进行数据交互,当有大量的操作请求时,使得数据中心21和数据中心22之间的数据交互增多,使得数据中心21和数据中心22之间的封闭性变差。综上所述,现有技术中提出的实现多数据中心的数据同步的方法,要么数据同步传输时存在瓶颈效应,要么存在封闭性差的技术问题。
技术实现思路
本申请实施例通过提供一种数据同步方法、数据同步装置及分布式系统,能够避免数据同步传输时存在的瓶颈效应,提高数据同步传输的效率,以及增强各个数据中心的封闭性。根据本专利技术的第一方面,提供了一种数据同步方法,一多数据中心中包括至少两个数据中心,所述至少两个数据中心中的每个数据中心包括至少两个节点,所述至少两个数据中心中的所有服务节点映射一个分布式哈希DHT环,所述DHT环中的每一段连续的取值范围range与一个服务节点对应,所述至少两个数据中心中的第一数据中心中的服务节点在所述至少两个数据中心中的至少一个第二数据中心中有数据区间分布相对应的至少一个备份节点,所述方法包括:管理节点获取指示对所述第一数据中心和所述第二数据中心的路由信息进行更新的路由更新消息,其中,所述路由信息中至少包含所述第一数据中心和所述第二数据中心的标识信息以及所述第一数据中心和所述第二数据中心中各节点的备份路由信息;所述管理节点根据所述路由更新消息,调整所述第一数据中心和所述第二数据中心的路由信息;所述管理节点将调整后的所述第一数据中心和所述第二数据中心的路由信息同步到所述第一数据中心和所述第二数据中心中,以使所述第一数据中心和所述第二数据中心基于所述调整后的路由信息,对管辖的各个节点的数据进行同步传输。结合第一方面,在第一种可能的实现方式中,所述备份路由信息包括节点对应的range范围信息、指示该节点为服务节点还是备份节点的属性信息和该节点的备份节点信息,其中,所述该节点的备份节点信息为当该节点为服务节点时,用于备份该节点中数据的备份节点的路由信息。结合第一方面的第一种可能的实现方式,在第二种可能的实现方式中,所述管理节点根据所述路由更新消息,调整所述第一数据中心和所述第二数据中心的路由信息,具体包括:所述管理节本文档来自技高网
...

【技术保护点】
一种数据同步方法,其特征在于,一多数据中心中包括至少两个数据中心,所述至少两个数据中心中的每个数据中心包括至少两个节点,所述至少两个数据中心中的所有服务节点映射一个分布式哈希DHT环,所述DHT环中的每一段连续的取值范围range与一个服务节点对应,所述至少两个数据中心中的第一数据中心中的服务节点在所述至少两个数据中心中的至少一个第二数据中心中有数据区间分布相对应的至少一个备份节点,所述方法包括:管理节点获取指示对所述第一数据中心和所述第二数据中心的路由信息进行更新的路由更新消息,其中,所述路由信息中至少包含所述第一数据中心和所述第二数据中心的标识信息以及所述第一数据中心和所述第二数据中心中各节点的备份路由信息;所述管理节点根据所述路由更新消息,调整所述第一数据中心和所述第二数据中心的路由信息;所述管理节点将调整后的所述第一数据中心和所述第二数据中心的路由信息同步到所述第一数据中心和所述第二数据中心中,以使所述第一数据中心和所述第二数据中心基于所述调整后的路由信息,对管辖的各个节点的数据进行同步传输。

【技术特征摘要】
1.一种数据同步方法,其特征在于,一多数据中心中包括至少两个数据
中心,所述至少两个数据中心中的每个数据中心包括至少两个节点,所述至少
两个数据中心中的所有服务节点映射一个分布式哈希DHT环,所述DHT环中
的每一段连续的取值范围range与一个服务节点对应,所述至少两个数据中心
中的第一数据中心中的服务节点在所述至少两个数据中心中的至少一个第二
数据中心中有数据区间分布相对应的至少一个备份节点,所述方法包括:
管理节点获取指示对所述第一数据中心和所述第二数据中心的路由信息
进行更新的路由更新消息,其中,所述路由信息中至少包含所述第一数据中心
和所述第二数据中心的标识信息以及所述第一数据中心和所述第二数据中心
中各节点的备份路由信息;
所述管理节点根据所述路由更新消息,调整所述第一数据中心和所述第二
数据中心的路由信息;
所述管理节点将调整后的所述第一数据中心和所述第二数据中心的路由
信息同步到所述第一数据中心和所述第二数据中心中,以使所述第一数据中心
和所述第二数据中心基于所述调整后的路由信息,对管辖的各个节点的数据进
行同步传输。
2.如权利要求1所述的方法,其特征在于,所述备份路由信息包括节点
对应的range范围信息、指示该节点为服务节点还是备份节点的属性信息和该
节点的备份节点信息,其中,所述该节点的备份节点信息为当该节点为服务节
点时,用于备份该节点中数据的备份节点的路由信息。
3.如权利要求2所述的方法,其特征在于,所述管理节点根据所述路由
更新消息,调整所述第一数据中心和所述第二数据中心的路由信息,具体包括:
所述管理节点根据所述路由更新消息中的参数,调整所述第一数据中心和
所述第二数据中心的路由信息中的备份路由信息,其中,所述路由更新消息中

\t的参数包括服务节点映射的range变化参数且该服务节点对应一备份节点、备
份节点变化参数、备份或服务节点对应的range服务切换参数中的一种或任意
组合,所述备份或服务节点对应的range服务切换参数用于指示该备份或服务
节点作为服务节点或作为备份节点的参数。
4.如权利要求3所述的方法,其特征在于,在所述路由更新消息中的参
数为所述第一数据中心中的第一服务节点映射的range变化参数且所述第一服
务节点对应一备份节点时,所述管理节点根据所述路由更新消息中的参数,调
整所述第一数据中心和所述第二数据中心的路由信息中的备份路由信息,具体
包括:
所述管理节点基于所述第一服务节点映射的range变化参数,采用负载均
衡策略或哈希算法或range合并算法,调整所述路由信息中的所述第一数据中
心中的所述第一服务节点及其相关的第二服务节点中的每一个服务节点映射
的range分布,以及相应调整所述路由信息中的所述第二数据中心中的至少一
个备份节点的range分布,其中,所述至少一个备份节点与所述第一服务节点
和所述第二服务节点相对应。
5.如权利要求3所述的方法,其特征在于,在所述路由更新消息中的参
数为所述第二数据中心中的第一备份节点变化参数时,所述管理节点根据所述
路由更新消息中的参数,调整所述第一数据中心和所述第二数据中心的路由信
息中的备份路由信息,具体包括:
所述管理节点获取与所述第一备份节点变化参数对应的因素,所述因素用
于触发所述第一备份节点发生改变;
所述管理节点检测到所述因素为备份节点掉线或数据迁移时,采用range
合并算法,调整所述路由信息中的所述第一备份节点及其相关的第二备份节点
对应的range分布,以及相应调整所述路由信息中的至少两个服务节点中的每
一个服务节点的备份节点信息,其中,所述至少两个服务节点为所述第一数据
中心中的与所述第一备份节点和所述第二备份节点对应的服务节点。
6.如权利要求3所述的方法,其特征在于,在所述路由更新消息中的参
数为所述第一数据中心的第三服务节点对应的range服务切换参数时,所述管
理节点根据所述路由更新消息中的参数,调整所述第一数据中心和所述第二数
据中心的路由信息中的备份路由信息,具体为:
所述管理节点从所述第二数据中心中确定与所述第三服务节点对应的第
三备份节点;
所述管理节点基于所述第三服务节点对应的range服务切换参数,将所述
路由信息中的所述第三服务节点的属性信息从第一属性信息调整为第二属性
信息,并将所述第三服务节点的备份节点信息中的所述第三备份节点的路由信
息删除,以及将所述路由信息中的所述第三备份节点的属性信息从所述第二属
性信息调整为所述第一属性信息,并将所述第三服务节点的路由信息添加到所
述第三备份节点的备份节点信息中,其中,所述第一属性信息用于指示节点为
服务节点的信息,所述第二属性信息用于指示节点为备份节点的信息。
7.如权利要求1-6任一项所述的方法,其特征在于,所述管理节点中存
储有所述多数据中心中的每一个数据中心的路由表信息,所述路由表信息中包
含与所述每一个数据中心唯一对应的标识信息和所述每一个数据中心的路由
信息。
8.一种数据同步装置,该数据同步装置分别与一多数据中心中的每一个
数据中心通信相连,所述多数据中心中包括至少两个数据中心,且所述至少两
个数据中心中的每个数据中心包括至少两个节点,所述至少两个数据中心中的
所有服务节点映射一个分布式哈希DHT环,所述DHT环中的每一段连续的取
值范围range与一个服务节点对应,所述至少两个数据中心中的第一数据中心
中的服务节点在所述至少两个数据中心中的至少一个第二数据中心中有数据
区间分布相对应的至少一个备份节点,其特征在于,所述数据同步装置包括:
第一获取单元,用于获取指示对所述第一数据中心和所述第二数据中心的
路由信息进行更新的路由更新消息,其中,所述路由信息中至少包含所述第一

\t数据中心和所述第二数据中心的标识信息以及所述第一数据中心和所述第二
数据中心中各节点的备份路由信息;
第一路由调整单元,用于接收来自所述第一获取单元的所述路由更新消
息,并根据所述路由更新消息,调整所述第一数据中心和所述第二数据中心的
路由信息;
第一路由同步单元,用于在接收到来自所述第一路由调整单元的调整后的
所述第一数据中心和所述第二数据中心的路由信息,并将所述调整后的所述第
一数据中心和所述第二数据中心的路由信息同步到所述第一数据中心和所述
第二数据中心中,以使所述第一数据中心和所述第二数据中心基于所述调整后
的路由信息,对管辖的各个节点的数据进行同步传输。
9.如权利要求8所述的装置,其特征在于,所述备份路由信息包括节点
对应的range范围信息、指示该节点为服务节点还是备份节点的属性信息和该
节点的备份节点信息,其中,所述该节点的备份节点信息为当该节点为服务节
点时,用于备份该节点中数据的备份节点的路由信息。
10.如权利要求9所述的装置,其特征在于,所述第一路由调整单元,具
体用于根据所述路由更新消息中的参数,调整所述第一数据中心和所述第二数
据中心的路由信息中的备份路由信息,其中,所述路由更新消息中的参数包括
服务节点映射的range变化参数且该服务节点对应一备份节点、备份节点变化
参数、备份或服务节点对应的range服务切换参数中的一种或任意组合,所述
备份或服务节点对应的range服务切换参数用于指示该备份或服务节点作为服
务节点或作为备份节点的参数。
11.如权利要求10所述的装置,其特征在于,所述第一路由调整单元包
括第一路由调整子单元,用于在所述路由更新消息中的参数为所述第一数据中
心中的第一服务节点映射的range变化参数且所述第一服务节点对应一备份节
点时,基于所述第一服务节点映射的range变化参数,采用负载均衡策略或哈
希算法或range合并算法,调整所述路由信息中的所述第一数据中心中的所述

\t第一服务节点及其相关的第二服务节点中的每一个服务节点映射的range分
布,以及相应调整所述路由信息中的所述第二数据中心中的至少一个备份节点
的range分布,其中,所述至少一个备份节点与所述第一服务节点和所述第二
服务节点相对应。
12.如权利要求10所述的装置,其特征在于,所述第一路由调整单元包
括第二路由调整子单元,用于在所述路由更新消息中的参数为所述第二数据中
心中的第一备份节点变化参数时,获取与所述第一备份节点变化参数对应的因
素,所述因素用于触发所述第一备份节点发生改变,在检测到所述因素为备份
节点掉线或数据迁移时,采用range合并算法,调整所述路由信息中的所述第
一备份节点及其相关的第二备份节点对应的range分布,以及相应调整所述路
由信息中的至少两个服务节点中的每一个服务节点的备份节点信息,其中,所
述至少两个服务节点为所述第一数据中心中的与所述第一备份节点和所述第
二备份节点对应的服务节点。
13.如权利要求10所述的装置,其特征在于,所述第一路由调整单元包
括第三路由调整子单元,用于在所述路由更新消息中的参数为所述第一数据中
心的第三服务节点对应的range服务切换参数时,从所述第二数据中心中确定
与所述第三服务节点对应的第三备份节点,再基于所述第三服务节点对应的
range服务切换参数,将所述路由信息中的所述第三服务节点的属性信息从第
一属性信息调整为第二属性信息,并将所述第三服务节点的备份节点信息中的
所述第三备份节点的路由信息删除,以及将所述路由信息中的所述第三备份节
点的属性信息从所述第二属性信息调整为所述第一属性信息,并将所述第三服
务节点的路由...

【专利技术属性】
技术研发人员:沈柯
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1