CN114896341A - 一种基于Gossip的分布式数据库多区域分布方法及系统 - Google Patents
一种基于Gossip的分布式数据库多区域分布方法及系统 Download PDFInfo
- Publication number
- CN114896341A CN114896341A CN202210496407.2A CN202210496407A CN114896341A CN 114896341 A CN114896341 A CN 114896341A CN 202210496407 A CN202210496407 A CN 202210496407A CN 114896341 A CN114896341 A CN 114896341A
- Authority
- CN
- China
- Prior art keywords
- unit
- message
- copy
- region
- distribution
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 31
- 238000012545 processing Methods 0.000 claims abstract description 20
- 238000011084 recovery Methods 0.000 claims abstract description 15
- 238000013508 migration Methods 0.000 claims description 6
- 230000005012 migration Effects 0.000 claims description 6
- 238000012546 transfer Methods 0.000 claims description 5
- 230000006854 communication Effects 0.000 abstract description 5
- 238000004891 communication Methods 0.000 abstract description 4
- 238000010586 diagram Methods 0.000 description 4
- 239000002253 acid Substances 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/242—Query formulation
- G06F16/2433—Query languages
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/284—Relational databases
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computational Linguistics (AREA)
- Mathematical Physics (AREA)
- Computing Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种基于Gossip的分布式数据库多区域分布方法及系统,属于计算机通信技术领域;所述的方法的具体步骤如下:S1通过SQL语句对数据库、表或行进行区域配置。将区域配置信息写入对应系统对象中;S2处理Range副本的分裂、合并和重分布流程,根据区域配置管理副本各区域分布,维持区域级容灾副本数;S3按Gossip协议的拓扑发送和接收广播消息,实现节点之间同步数据;S4定义广播消息的格式和内容,记录并通过S3转发广播消息到其他节点,同步消息内容到S2;本发明能够精确控制区域副本分布;充分利用就近读写的优势,适用更灵活的业务场景;支持区域级副本冗余容灾,确保发生区域故障时能够正常提供服务;通过Gossip加快节点间消息同步速度。
Description
技术领域
本发明公开一种基于Gossip的分布式数据库多区域分布方法及系统,涉及计算机通信技术域。
背景技术
分布式数据库的常见架构是最外层是SQL,内部数据采用支持事务的KV Store进行管理,数据库将数据组织成有序的Key-Value对形式,形成一个KV Map,SQL请求最终会转换为KV操作。KV Map逻辑上按照范围被切分成多个Key空间,每个Key空间称为一个Range,数据最终划分为多个Range。
为保证Range的高可用和Range操作的ACID语义,每个Range有一个专门Raft组管理各副本,Raft组中有一个Leader和Lease副本负责整个Range的读写。
分布式数据库的区域分布,在部署层面与云服务的Region概念类似,在物理上是指一个可提供服务的较大区域,一般包含多个数据中心,多个服务器机房。
一般在数据库集群启动时,分布区域就已确定了,数据随机分布在各区域上,这样一方面无法在数据库、表或行层面上更精确地控制这些对象的分布区域,另一方面,也使客户端请求的处理可能会跨一个或多个区域,导致消息延迟增多,无法充分利用分布式数据库就近读写的优势。
Gossip协议一般称作“流言算法”、“疫情传播算法”。特点是Gossip网络中节点之间是对等的,没有中心节点,允许节点的任意增加和减少,具有可扩展性。Gossip网络下的消息传递速度是指数级的,但由于采用弱一致性原则,同一时间各节点的信息可能存在差异,但随着时间推移,最终某一时刻全网信息会达成一致。
故现发明一种基于Gossip的分布式数据库多区域分布方法及系统,以解决上述问题。
发明内容
本发明针对现有技术的问题,提供一种基于Gossip的分布式数据库多区域分布方法及系统,所采用的技术方案为:一种基于Gossip的分布式数据库多区域分布方法,所述方法的具体步骤如下:
S1通过SQL语句对数据库、表或行进行区域配置;将区域配置信息写入对应系统对象中;
S2处理Range副本的分裂、合并和重分布流程,根据区域配置管理副本各区域分布,维持区域级容灾副本数;
S3按Gossip协议的拓扑发送和接收广播消息,实现节点之间同步数据;
S4定义广播消息的格式和内容,记录并通过S3转发广播消息到其他节点,同步消息内容到S2。
所述的S1具体步骤如下:
S101解析和执行区域配置类SQL语句;
S102将区域配置信息写入对应系统对象中。
所述的S2具体步骤如下:
S201将system消息中系统对象的Key区间范围和副本Key区间范围进行匹配,从而找到系统对象对应的Range副本,再将区域配置更新到对应副本;
S202根据Range副本的Key区间范围进行Range的拆分、合并或迁移;
S203由区域配置决定各区域分布的具体副本数,维持副本分布单元的区域级容灾的副本数。
所述的S3具体步骤如下:
S301将S4下发的消息广播到其他节点;
S302将从其他节点接收的消息上报至S4。
所述的S4具体步骤如下:
S401定义和管理主要携带节点地址和区域信息的node消息以及携带各系统对象的描述信息的system消息;
S402将S1下发各系统对象的区域配置信息写入到system消息中;
S403转换system消息中的区域配置,将区域配置信息更新到S2对应的Range副本,再将该副本放入副本处理队列;
S404当system消息中含有区域配置时,将区域配置同步给S2;当收到node消息时,将更新S2中的node信息记录表。
一种基于Gossip的分布式数据库多区域分布系统,其特征是所述的系统具体包括SQL区域配置单元、副本分布单元、Gossip单元和消息管理单元:
SQL区域配置单元:通过SQL语句对数据库、表或行进行区域配置;将区域配置信息写入对应系统对象中;
副本分布单元:处理Range副本的分裂、合并和重分布流程,根据区域配置管理副本各区域分布,维持区域级容灾副本数;
Gossip单元:按Gossip协议的拓扑发送和接收广播消息,实现节点之间同步数据;
消息管理单元:定义广播消息的格式和内容,记录并通过Gossip单元转发广播消息到其他节点,同步消息内容到分布单元。
所述SQL区域配置单元具体包括解析执行单元和写入单元:
解析执行单元:解析和执行区域配置类SQL语句;
写入单元:将区域配置信息写入对应系统对象中。
所述副本分布单元具体包括更新单元、Range操作单元和容灾单元:
更新单元:将system消息中系统对象的Key区间范围和副本Key区间范围进行匹配,从而找到系统对象对应的Range副本,再将区域配置更新到对应副本;
Range操作单元:根据Range副本的Key区间范围进行Range的拆分、合并或迁移;
容灾单元:由区域配置决定各区域分布的具体副本数,维持副本分布单元的区域级容灾的副本数。
所述Gossip单元具体包括广播单元和上报单元:
广播单元:将管理单元下发的消息广播到其他节点;
上报单元:将从其他节点接收的消息上报至管理单元。
所述消息管理单元具体包括定义消息管理单元、配置管理单元、分布管理单元和消息中转管理单元。
定义管理单元:定义和管理主要携带节点地址和区域信息的node消息以及携带各系统对象的描述信息的system消息;
配置管理单元:将配置单元下发各系统对象的区域配置信息写入到system消息中;
分布管理单元:转换system消息中的区域配置,将区域配置信息更新到分布单元对应的Range副本,再将该副本放入副本处理队列;
消息中转单元:当system消息中含有区域配置时,将区域配置同步给分布单元;当收到node消息时,将更新分布单元中的node信息记录表。
本发明的有益效果为:(1)通过SQL语句配置数据库、表或行的区域,精确控制各数据对象的区域副本分布;(2)充分利用分布式数据库就近读写的优势,适用更灵活的业务场景。比如,客户端可通过SQL语句将常用数据库分布在本地较近的区域当中,以获得更快的性能表现;(3)支持区域级副本冗余容灾,确保发生区域故障时仍然能够正常提供服务;(4)通过Gossip单元传递节点信息和区域配置信息,加快节点间消息同步速度。
一般分布式数据库集群启动后,数据对象的副本在各区域之间是随机分布的,无法精确控制数据库、表或行的具体分布区域,导致一些客户端请求的处理过程可能跨一个或多个区域,消息延迟增多,无法充分利用分布式数据库就近读写的优势。
本发明提出一种基于Gossip的分布式数据库多区域分布方法,可通过SQL语句配置数据库、表或行的分布区域,采用Gossip协议在集群中快速同步区域配置和节点信息,使各节点能够根据区域配置精确控制副本分布,从而充分利用分布式数据库就近读写的优势,适用更灵活的业务场景。另外,本发明也提出了区域级副本冗余容灾方案,以确保发生区域故障时仍然能够正常提供服务。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是分布式数据库集群区域、节点和Range副本关系示图;图2是本发明系统的结构示意图;图3是本发明的管理单元示意图;图4是本发明的分布单元示意图。
具体实施方式
下面结合附图和具体实施例对本发明作进一步说明,以使本领域的技术人员可以更好地理解本发明并能予以实施,但所举实施例不作为对本发明的限定;
实施例一:
一种基于Gossip的分布式数据库多区域分布方法,所述方法的具体步骤如下:
S1通过SQL语句对数据库、表或行进行区域配置;将区域配置信息写入对应系统对象中;
S2处理Range副本的分裂、合并和重分布流程,根据区域配置管理副本各区域分布,维持区域级容灾副本数;
S3按Gossip协议的拓扑发送和接收广播消息,实现节点之间同步数据;
S4定义广播消息的格式和内容,记录并通过S3转发广播消息到其他节点,同步消息内容到S2;
分布式数据库集群中,区域在物理上指代一个可提供服务的较大区域,一般包含多个数据中心,多个服务器机房;一片区域里可能包含多个数据库节点,节点所在区域在节点启动时指定,一个节点上可能分布多个数据副本;
通过SQL语句对数据库、表或行进行区域配置,通过自定义消息描述节点和区域信息,再通过Gossip协议广播消息到集群其他节点,各节点根据广播消息中的节点和区域配置调整数据副本的区域分布;
本发明包括四个功能单元:SQL区域配置单元、副本分布单元、Gossip单元和消息管理单元;
进一步的,所述的S1具体步骤如下:
S101解析和执行区域配置类SQL语句;
S102将区域配置信息写入对应系统对象中;
SQL区域配置单元实现区域配置类SQL语句的解析和执行,可通过SQL语句对数据库、表或行进行区域配置,最终将区域配置信息写入对应系统对象中;数据库内部通过系统对象描述和管理数据库、表或行对象,系统对象记录全局唯一的对象ID,数据区间起始Key和区域配置信息;
进一步的,所述的S2具体步骤如下:
S201将system消息中系统对象的Key区间范围和副本Key区间范围进行匹配,从而找到系统对象对应的Range副本,再将区域配置更新到对应副本;
S202根据Range副本的Key区间范围进行Range的拆分、合并或迁移;
S203由区域配置决定各区域分布的具体副本数,维持副本分布单元的区域级容灾的副本数;
副本分布单元负责处理Range副本的分裂、合并和重分布流程,根据区域配置管理副本各区域分布,同时维持区域级容灾的副本数;副本分布单元从副本处理队列读取待处理副本,检查副本是否全部位于配置区域内,如有副本未分布在指定区域中,则发起副本分布流程;
system消息中的系统对象和每个Range副本都记录有各自占用的Key区间范围,在区域配置转换过程中,本发明中的副本分布单元将system消息中系统对象的Key区间范围和副本Key区间范围进行匹配,从而找到系统对象对应的Range副本,再将区域配置更新到对应副本;
副本分布过程是,首先,根据Range副本的Key区间范围判断是否进行Range的拆分、合并或迁移;检查Range副本的start key和end key和system消息中系统对象的startkey和end key的Key区间包含关系;如果系统对象Key区间是Range副本Key区间的子集,则需要先进行Range分裂再进行副本迁移,如果系统对象Key区间包含当前Range范围,则先进行Range副本迁移再确定是否进行Range合并;
第二步,副本迁移时,根据区域配置从node信息记录表中随机选取节点,先在该节点增加副本,再删除原节点上的副本;
副本分布单元维持区域级容灾的副本数,是保证如某一区域全部节点发生故障时,仍能正常对外提供服务的副本数;各区域分布的具体副本数由区域配置决定;以3副本为例,如果指定某数据库在3个区域分布,那么其中任一区域需保证至少分布1个副本,如果在2个区域分布,则各区域至少分布2个副本才能保证区域级容灾;
进一步的,所述的S3具体步骤如下:
S301将S4下发的消息广播到其他节点;
S302将从其他节点接收的消息上报至S4;
Gossip单元实现广播消息的记录和转发,内部按Gossip协议实现节点之间广播通信,按Gossip协议的拓扑模式发送和接收区域分布相关数据,也就是将消息管理单元下发的消息广播到其他节点,并将从其他节点接收的消息上报给消息管理单元;通信过程中节点既是client也是server;
再一步的,所述的S4具体步骤如下:
S401定义和管理主要携带节点地址和区域信息的node消息以及携带各系统对象的描述信息的system消息;
S402将S1下发各系统对象的区域配置信息写入到system消息中;
S403转换system消息中的区域配置,将区域配置信息更新到S2对应的Range副本,再将该副本放入副本处理队列;
S404当system消息中含有区域配置时,将区域配置同步给S2;当收到node消息时,将更新S2中的node信息记录表;
数据库内部通过系统对象描述并管理数据库、表或行,系统对象记录了全局唯一的对象ID,数据区间起始Key和区域配置信息;
消息管理单元定义和管理两类广播消息:node和system,消息采用key-value形式表示;node消息主要携带节点地址和区域信息,具体是node消息的value部分记录节点的id、地址以及所在区域;其中节点id按照节点启动顺序从1开始分配,节点地址即节点对外的通信地址,区域信息在节点启动时指定;system消息主要携带各系统对象的区域配置信息;system消息value部分携带各系统对象的描述信息,如数据库、表或行的对象id,占用的Key区间范围以及区域配置等;系统对象配置发生变化时,节点将会对外发送system广播消息。
消息管理单元做为SQL区域配置单元、副本分布单元和Gossip单元的中间通道,主要实现SQL区域配置、广播消息和副本区域配置三者之间的配置同步;消息管理单元主要完成以下工作:
消息管理单元收到Gossip单元上报的system消息中如果含有区域配置,消息管理单元会将区域配置同步给副本分布单元;具体是先将该消息携带的区域配置信息转换为对应副本的区域配置信息,再将区域配置信息更新到副本分布单元对应的Range副本上,最后将该副本放入副本处理队列,由副本分布单元进一步处理;
SQL层下发各系统对象的区域配置信息最后会写入到system消息中,消息管理单元再通过Gossip单元将system消息广播到其他节点;
以下三种情况之一,通过Gossip单元将node消息广播到其他节点:
1.节点启动
2.新节点加入集群
3.定时1小时超时
消息管理单元从Gossip接收到node消息时,首先更新副本分布单元中的node信息记录表,该表记录了各节点的ID、地址和区域信息;
节点消息管理单元从Gossip接收到node广播消息后,首先更新副本分布单元中的node信息记录表,表中记录各节点的ID、地址和区域信息;如果收到system消息,则将该消息携带的区域配置信息转换为对应副本的区域配置信息,再更新到副本分布单元对应的Range副本,并将该副本放入副本处理队列;
实施例二:
一种基于Gossip的分布式数据库多区域分布系统,其特征是所述的系统具体包括SQL区域配置单元、副本分布单元、Gossip单元和消息管理单元:
SQL区域配置单元:通过SQL语句对数据库、表或行进行区域配置;将区域配置信息写入对应系统对象中;
副本分布单元:处理Range副本的分裂、合并和重分布流程,根据区域配置管理副本各区域分布,维持区域级容灾副本数;
Gossip单元:按Gossip协议的拓扑发送和接收广播消息,实现节点之间同步数据;
消息管理单元:定义广播消息的格式和内容,记录并通过Gossip单元转发广播消息到其他节点,同步消息内容到分布单元;
所述SQL区域配置单元具体包括解析执行单元和写入单元:
解析执行单元:解析和执行区域配置类SQL语句;
写入单元:将区域配置信息写入对应系统对象中;
所述副本分布单元具体包括更新单元、Range操作单元和容灾单元:
更新单元:将system消息中系统对象的Key区间范围和副本Key区间范围进行匹配,从而找到系统对象对应的Range副本,再将区域配置更新到对应副本;
Range操作单元:根据Range副本的Key区间范围进行Range的拆分、合并或迁移;
容灾单元:由区域配置决定各区域分布的具体副本数,维持副本分布单元的区域级容灾的副本数;
所述Gossip单元具体包括广播单元和上报单元;
广播单元:将管理单元下发的消息广播到其他节点;
上报单元:将从其他节点接收的消息上报至管理单元;
所述消息管理单元具体包括定义消息管理单元、配置管理单元、分布管理单元和消息中转管理单元;
定义管理单元:定义和管理主要携带节点地址和区域信息的node消息以及携带各系统对象的描述信息的system消息;
配置管理单元:将配置单元下发各系统对象的区域配置信息写入到system消息中;
分布管理单元:转换system消息中的区域配置,将区域配置信息更新到分布单元对应的Range副本,再将该副本放入副本处理队列;
消息中转单元:当system消息中含有区域配置时,将区域配置同步给分布单元;当收到node消息时,将更新分布单元中的node信息记录表。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种基于Gossip的分布式数据库多区域分布方法,其特征是所述方法的具体步骤如下:
S1通过SQL语句对数据库、表或行进行区域配置;将区域配置信息写入对应系统对象中;
S2处理Range副本的分裂、合并和重分布流程,根据区域配置管理副本各区域分布,维持区域级容灾副本数;
S3按Gossip协议的拓扑发送和接收广播消息,实现节点之间同步数据;
S4定义广播消息的格式和内容,记录并通过S3转发广播消息到其他节点,同步消息内容到S2。
2.根据权利要求1所述的方法,其特征是所述的S1具体步骤如下:
S101解析和执行区域配置类SQL语句;
S102将区域配置信息写入对应系统对象中。
3.根据权利要求2所述的方法,其特征是所述的S2具体步骤如下:
S201将system消息中系统对象的Key区间范围和副本Key区间范围进行匹配,从而找到系统对象对应的Range副本,再将区域配置更新到对应副本;
S202根据Range副本的Key区间范围进行Range的拆分、合并或迁移;
S203由区域配置决定各区域分布的具体副本数,维持副本分布单元的区域级容灾的副本数。
4.根据权利要求3所述的方法,其特征是所述的S3具体步骤如下:
S301将S4下发的消息广播到其他节点;
S302将从其他节点接收的消息上报至S4。
5.根据权利要求4所述的方法,其特征是所述的S4具体步骤如下:
S401定义和管理主要携带节点地址和区域信息的node消息以及携带各系统对象的描述信息的system消息;
S402将S1下发各系统对象的区域配置信息写入到system消息中;
S403转换system消息中的区域配置,将区域配置信息更新到S2对应的Range副本,再将该副本放入副本处理队列;
S404当system消息中含有区域配置时,将区域配置同步给S2;当收到node消息时,将更新S2中的node信息记录表。
6.一种基于Gossip的分布式数据库多区域分布系统,其特征是所述的系统具体包括SQL区域配置单元、副本分布单元、Gossip单元和消息管理单元:
SQL区域配置单元:通过SQL语句对数据库、表或行进行区域配置;将区域配置信息写入对应系统对象中;
副本分布单元:处理Range副本的分裂、合并和重分布流程,根据区域配置管理副本各区域分布,维持区域级容灾副本数;
Gossip单元:按Gossip协议的拓扑发送和接收广播消息,实现节点之间同步数据;
消息管理单元:定义广播消息的格式和内容,记录并通过Gossip单元转发广播消息到其他节点,同步消息内容到分布单元。
7.根据权利要求6所述的系统,其特征是所述SQL区域配置单元具体包括解析执行单元和写入单元:
解析执行单元:解析和执行区域配置类SQL语句;
写入单元:将区域配置信息写入对应系统对象中。
8.根据权利要求7所述的系统,其特征是所述副本分布单元具体包括更新单元、Range操作单元和容灾单元:
更新单元:将system消息中系统对象的Key区间范围和副本Key区间范围进行匹配,从而找到系统对象对应的Range副本,再将区域配置更新到对应副本;
Range操作单元:根据Range副本的Key区间范围进行Range的拆分、合并或迁移;
容灾单元:由区域配置决定各区域分布的具体副本数,维持副本分布单元的区域级容灾的副本数。
9.根据权利要求8所述的系统,其特征是所述Gossip单元具体包括广播单元和上报单元:
广播单元:将管理单元下发的消息广播到其他节点;
上报单元:将从其他节点接收的消息上报至管理单元。
10.根据权利要求9所述的系统,其特征是所述消息管理单元具体包括定义消息管理单元、配置管理单元、分布管理单元和消息中转管理单元。
定义管理单元:定义和管理主要携带节点地址和区域信息的node消息以及携带各系统对象的描述信息的system消息;
配置管理单元:将配置单元下发各系统对象的区域配置信息写入到system消息中;
分布管理单元:转换system消息中的区域配置,将区域配置信息更新到分布单元对应的Range副本,再将该副本放入副本处理队列。
消息中转单元:当system消息中含有区域配置时,将区域配置同步给分布单元;当收到node消息时,将更新分布单元中的node信息记录表。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210496407.2A CN114896341A (zh) | 2022-05-09 | 2022-05-09 | 一种基于Gossip的分布式数据库多区域分布方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210496407.2A CN114896341A (zh) | 2022-05-09 | 2022-05-09 | 一种基于Gossip的分布式数据库多区域分布方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114896341A true CN114896341A (zh) | 2022-08-12 |
Family
ID=82722280
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210496407.2A Pending CN114896341A (zh) | 2022-05-09 | 2022-05-09 | 一种基于Gossip的分布式数据库多区域分布方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114896341A (zh) |
-
2022
- 2022-05-09 CN CN202210496407.2A patent/CN114896341A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10979286B2 (en) | Method, device and computer program product for managing distributed system | |
CN107295080B (zh) | 应用于分布式服务器集群的数据存储方法和服务器 | |
US20090144338A1 (en) | Asynchronously replicated database system using dynamic mastership | |
US7680876B1 (en) | Highly available domain name system | |
US8375001B2 (en) | Master monitoring mechanism for a geographical distributed database | |
US11841781B2 (en) | Methods and systems for a non-disruptive planned failover from a primary copy of data at a primary storage system to a mirror copy of the data at a cross-site secondary storage system | |
US20090144220A1 (en) | System for storing distributed hashtables | |
CN107465735B (zh) | 分布式消息系统 | |
US20050216523A1 (en) | File management method in a distributed storage system | |
EP2643771B1 (en) | Real time database system | |
CN101751415B (zh) | 元数据服务系统、元数据同步方法与写服务器更新方法 | |
CN113268472A (zh) | 一种分布式数据存储系统及方法 | |
EP3427157B1 (en) | Cross-regional data transmission | |
US7805503B2 (en) | Capability requirements for group membership | |
CN109254873B (zh) | 数据备份方法、相关装置及系统 | |
US7433928B1 (en) | System pre-allocating data object replicas for a distributed file sharing system | |
CN113259476B (zh) | 消息推送方法及系统 | |
US20090144333A1 (en) | System for maintaining a database | |
CN111400065B (zh) | 一种分离全局zookeeper的pulsar消息异地多活方法及系统 | |
US20210326224A1 (en) | Method and system for processing device failure | |
CN112328685A (zh) | 一种全对等分布式数据库数据同步方法 | |
CN110912979B (zh) | 一种解决多服务器资源同步冲突方法 | |
JP4224289B2 (ja) | データの複製管理方法 | |
CN114896341A (zh) | 一种基于Gossip的分布式数据库多区域分布方法及系统 | |
CN109992447B (zh) | 数据复制方法、装置及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20221201 Address after: Room 305-22, Building 2, No. 1158 Zhangdong Road and No. 1059 Dangui Road, China (Shanghai) Pilot Free Trade Zone, Pudong New Area, Shanghai, 200120 Applicant after: Shanghai Yunxi Technology Co.,Ltd. Address before: Building S02, 1036 Gaoxin Langchao Road, Jinan, Shandong 250100 Applicant before: Shandong Inspur Scientific Research Institute Co.,Ltd. |
|
TA01 | Transfer of patent application right |