CN115687520A - 一种分布式数据库系统及其数据的同步方法、装置 - Google Patents

一种分布式数据库系统及其数据的同步方法、装置 Download PDF

Info

Publication number
CN115687520A
CN115687520A CN202211327316.2A CN202211327316A CN115687520A CN 115687520 A CN115687520 A CN 115687520A CN 202211327316 A CN202211327316 A CN 202211327316A CN 115687520 A CN115687520 A CN 115687520A
Authority
CN
China
Prior art keywords
copy
data
common
copies
member list
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
Application number
CN202211327316.2A
Other languages
English (en)
Inventor
贾德宾
刘浩
韩富晟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Oceanbase Technology Co Ltd
Original Assignee
Beijing Oceanbase Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Oceanbase Technology Co Ltd filed Critical Beijing Oceanbase Technology Co Ltd
Priority to CN202211327316.2A priority Critical patent/CN115687520A/zh
Publication of CN115687520A publication Critical patent/CN115687520A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本说明书提供了一种分布式数据库系统及其数据的同步方法,包括仲裁副本和多个普通副本,所述主副本用于在当前任期内基于其自身维护的成员列表向所述仲裁副本和所述多个普通副本申请延展其任期;以及,若在当前任期结束前得到超过所述成员列表的成员数量半数的赞同票,则所述主副本确认自身的任期成功延展,否则所述主副本将自身降级为备副本;所述仲裁副本和所述备副本用于在确定自身没有记载处于任期内的所述数据的主副本的情况下,在所述仲裁副本和所述多个普通副本中发起针对所述数据的主副本的分布式选举,并将获得超过所述成员列表的成员数量的半数的赞同票的普通副本选举为所述主副本。

Description

一种分布式数据库系统及其数据的同步方法、装置
技术领域
本说明书涉及数据库技术领域,尤其涉及一种分布式数据库系统及其数据的同步方法、装置。
背景技术
两地三中心是一种常用的服务器容灾备份方案,两地是指按不同地理位置划分的主区域和备区域,而三中心是指在主区域部署的生产中心和同城容灾中心,在备区域部署的异地容灾中心。其中,主区域内维护有支持读写的多个普通副本,而备区域内维护有仅支持日志存储的日志副本,在上述普通副本和日志副本的共同作用下,可以满足异地服务器容灾备份的需求。为了进一步提高服务器的容灾能力,还衍生出了三地五中心的容灾备份方案,通过将原本部署于同一主区域中的生产中心和同城容灾中心分别部署于不同的城市中,从而避免主区域的两个中心同时宕机造成的影响。
然而,不论是两地三中心还是三地五中心的备份方案(或者归类为N地M中心的备份方案,N、M均为大于等于2的整数),其均要求普通副本和日志副本进行跨区域(主区域和备区域之间)的数据同步,导致数据同步的响应时长较长,影响用户体验;同时跨区域的数据同步也需要较大的网络带宽,无疑增加了实际的运营成本。
发明内容
为克服相关技术中存在的问题,本说明书提供了一种分布式数据库系统及其数据的同步方法、装置。
根据本说明书实施例的第一方面,提供一种分布式数据库系统,包括仲裁副本和多个普通副本,各普通副本维护有同一数据,所述仲裁副本不维护所述数据及日志,所述普通副本部署于多个数据中心,每个数据中心配置有至少一对所述普通副本且所述多个数据中心位于至少一个主区域,所述仲裁副本部署于备区域;若任一普通副本为所述数据的主副本、其他普通副本为备副本:
所述主副本用于在当前任期内基于其自身维护的成员列表向所述仲裁副本和所述多个普通副本申请延展其任期;以及,若在当前任期结束前得到超过所述成员列表的成员数量半数的赞同票,则所述主副本确认自身的任期成功延展,否则所述主副本将自身降级为备副本;
所述仲裁副本和所述备副本用于在确定自身没有记载处于任期内的所述数据的主副本的情况下,在所述仲裁副本和所述多个普通副本中发起针对所述数据的主副本的分布式选举,并将获得超过所述成员列表的成员数量的半数的赞同票的普通副本选举为所述主副本。
根据本说明书实施例的第二方面,所述分布式数据库系统包括仲裁副本和多个普通副本,各普通副本维护有同一数据,所述仲裁副本不维护所述数据及日志,所述普通副本部署于多个数据中心,每个数据中心配置有至少一对所述普通副本且所述多个数据中心位于至少一个主区域,所述仲裁副本部署于备区域;若任一普通副本为所述数据的主副本、其他普通副本为备副本,则所述方法应用于所述主副本,所述方法包括:
在当前任期内基于其自身维护的成员列表向所述仲裁副本和所述多个普通副本申请延展其任期;
若在当前任期结束前得到超过所述成员列表的成员数量半数的赞同票,则所述主副本确认自身的任期成功延展,否则所述主副本将自身降级为备副本。
根据本说明书实施例的第三方面,提供一种分布式数据库系统数据的同步方法,所述分布式数据库系统包括仲裁副本和多个普通副本,各普通副本维护有同一数据,所述仲裁副本不维护所述数据及日志,所述普通副本部署于多个数据中心,每个数据中心配置有至少一对所述普通副本且所述多个数据中心位于至少一个主区域,所述仲裁副本部署于备区域;若任一普通副本为所述数据的主副本、其他普通副本为备副本,则所述方法应用于所述备副本,所述方法包括:
在确定自身没有记载处于任期内的所述数据的主副本的情况下,在所述仲裁副本和所述多个普通副本中发起针对所述数据的主副本的分布式选举,并将获得超过所述成员列表的成员数量的半数的赞同票的普通副本选举为所述主副本。
根据本说明书实施例的第四方面,提供一种分布式数据库系统数据的同步装置,所述分布式数据库系统包括仲裁副本和多个普通副本,各普通副本维护有同一数据,所述仲裁副本不维护所述数据及日志,所述普通副本部署于多个数据中心,每个数据中心配置有至少一对所述普通副本且所述多个数据中心位于至少一个主区域,所述仲裁副本部署于备区域;若任一普通副本为所述数据的主副本、其他普通副本为备副本,则所述装置应用于所述主副本,所述装置包括:
任期延展单元,用于在当前任期内基于其自身维护的成员列表向所述仲裁副本和所述多个普通副本申请延展其任期;
确认单元,用于若在当前任期结束前得到超过所述成员列表的成员数量半数的赞同票,则所述主副本确认自身的任期成功延展,否则所述主副本将自身降级为备副本。
根据本说明书实施例的第五方面,提供一种分布式数据库系统数据的同步装置,所述分布式数据库系统包括仲裁副本和多个普通副本,各普通副本维护有同一数据,所述仲裁副本不维护所述数据及日志,所述普通副本部署于多个数据中心,每个数据中心配置有至少一对所述普通副本且所述多个数据中心位于至少一个主区域,所述仲裁副本部署于备区域;若任一普通副本为所述数据的主副本、其他普通副本为备副本,则所述装置应用于所述备副本,所述装置包括:
选举发起单元,用于在确定自身没有记载处于任期内的所述数据的主副本的情况下,在所述仲裁副本和所述多个普通副本中发起针对所述数据的主副本的分布式选举,并将获得超过所述成员列表的成员数量的半数的赞同票的普通副本选举为所述主副本。根据本说明书实施例的第六方面,提供一种电子设备,包括:
处理器;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为实现上述第二方面或第三方面所述方法的步骤。
根据本说明书实施例的第七方面,提供一种计算机可读存储介质,其上储存有可执行指令;其中,该指令被处理器执行时,实现上述第二方面或第三方面所述方法的步骤。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本说明书。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本说明书的实施例,并与说明书一起用于解释本说明书的原理。
图1是本说明书一示例性实施例提供的一种分布式数据库系统的架构示意图;
图2是本说明书一示例性实施例提供的一种分布式数据库系统数据的同步方法的流程图;
图3是本说明书一示例性实施例提供的一种移除至少一对普通副本的示意图;
图4是本说明书一示例性实施例提供的一种三个数据中心的示意图;
图5是本说明书一示例性实施例提供的另一种移除至少一对普通副本的示意图;
图6是本说明书一示例性实施例提供的一种独立生成成员变更日志的示意图;
图7是本说明书一示例性实施例提供的一种分布式数据库系统数据的同步方法的流程图;
图8是本说明书一示例性实施例提供的一种电子设备的示意结构图;
图9是本说明书一示例性实施例提供的一种分布式数据库系统数据的同步装置的框图;
图10是本说明书一示例性实施例提供的一种分布式数据库系统数据的同步装置的框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本说明书一个或多个实施例相一致的所有实施方式。相反,它们仅是本说明书一个或多个实施例的一些方面相一致的装置和方法的例子。
需要说明的是:在其他实施例中并不一定按照本说明书示出和描述的顺序来执行相应方法的步骤。在一些其他实施例中,其方法所包括的步骤可以比本说明书所描述的更多或更少。此外,本说明书中所描述的单个步骤,在其他实施例中可能被分解为多个步骤进行描述;而本说明书中所描述的多个步骤,在其他实施例中也可能被合并为单个步骤进行描述。应当理解,尽管在本说明书可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
在相关技术中,可以通过跨区域的部署多个副本来实现容灾备份,例如在两地三中心的备份方案中,可以在主区域的两个数据中心分别部署一对普通副本,在备区域部署日志副本,基于跨区域的数据同步,即使主区域的两个数据中心均宕机,依旧可以利用备区域的日志副本实现数据恢复,完成服务器的容灾备份。
然而,虽然N地M中心的容灾备份方案具有较优的容灾能力,但是,因为其需要跨区域的数据同步和主副本的选举,会导致数据同步的响应时长较长。例如,在两地三中心方案中,当主副本完成对应的数据更新时,需要生成对应的数据日志并发起对应的数据同步投票,该数据同步投票需要该分布式数据库系统的所有副本均参与其中,其中也包括备区域中的日志副本,数据库的各个副本在完成数据同步后需要向主副本反馈对应的确认票,主副本只有在接收到超过半数的确认票后,该数据同步才能视为执行完成,所以这种跨区域的数据同步投票会导致数据同步的响应时长较长,特别是当主区域的各个普通副本发送的确认票无法达到成员数量的半数时,此时主副本甚至需要等待备区域所述日志副本发送对应的确认票,才能确认同步完成,届时该响应时长可以达到秒级,严重影响用户体验;同时,跨区域的数据同步也会占用较大的网络带宽,增加了运营成本。
因此,为解决上述问题,本说明书提出了一种改进后的分布式数据库系统数据的同步方式,下面结合实施例进行详细描述。
图1是本说明书一示例性实施例提供的一种分布式数据库系统的架构示意图,如图1所示,该分布式数据库系统可以包括仲裁副本10和多个普通副本(如普通副本11、普通副本12、普通副本13和普通副本14),其中普通副本可以部署于多个数据中心,而多个数据中心位于至少一个主区域,仲裁副本10部署于备区域,各普通副本维护有同一数据,而仲裁副本10不包含该数据。
仲裁副本10可以部署在包含一独立主机的物理服务器,或者该仲裁副本10可以部署在主机集群承载的虚拟服务器(如云服务器),本说明书对此不进行限制。与相关技术中需要备区域维护的日志副本参与主副本选举和数据同步投票所不同,本说明书所述的备区域中的仲裁副本10是不维护数据及该数据对应的日志的副本,也就是说,该仲裁副本10不参与数据同步,只参与主副本的选举,当主区域维护的多个普通副本中的主副本申请延展其任期后,需要主区域的多个普通副本和仲裁副本之间达成多数派的数量要求,从而可以选举出对应的主副本。通过使仲裁副本10不参与跨区域的进行数据同步投票,可以有效减少数据同步的响应时长;同时,因为仲裁副本10不再需要接收并备份主区域维护的普通副本对应的数据和日志,只需要接收少量关于该分布式数据库系统针对成员列表对应的元数据即可参与主副本的选举,减少了仲裁副本与主副本之间的交互的数据量,减少了对网络带宽的需求,节约了运营成本。普通副本11、普通副本12、普通副本13和普通副本14的部署环境可以与仲裁副本10相同,本说明书在此不再赘述。
可以理解的是,虽然在图1所示的实施例中,仅存在一个主区域,但在一些实施例中,也可以存在多个主区域,例如主区域A和主区域B,本说明书并不对此限制。同时每个数据中心配置的副本数量也可以根据实际需求进行调整。
基于上述分布式数据库系统架构,通过将备区域部署的日志副本替换为仲裁副本,使得备区域部署的仲裁副本只需要参与针对主副本的选举即可,不再需要参与针对数据日志同步的投票过程,减少了数据同步的响应时长;同时该仲裁副本也不再需要维护普通副本对应的数据和日志,只需要与主副本进行针对成员列表的元数据的交互,以用于主副本的选举,减少了与主副本交互的数据量,节约了网络带宽,节省了运营成本。
图2是本说明书一示例性实施例提供的一种分布式数据库系统数据的同步方法的流程图,该分布式数据库系统包括仲裁副本和多个普通副本,各普通副本维护有同一数据,所述仲裁副本不维护所述数据及日志,所述普通副本部署于多个数据中心,每个数据中心配置有至少一对所述普通副本且所述多个数据中心位于至少一个主区域,所述仲裁副本部署于备区域;若任一普通副本为所述数据的主副本、其他普通副本为备副本,则该方法应用于所述主副本库,可以包括以下步骤:
步骤202、在当前任期内基于其自身维护的成员列表向所述仲裁副本和所述多个普通副本申请延展其任期。
普通副本可以是指具有读写能力的全功能副本,其可以将接收到的数据变更日志回放成对应的数据后,持久化存储该数据。当然该普通副本也可以不进行该回放步骤,而是直接存储对应的日志,从而可以节省对应的存储空间。
仲裁副本因为只需要参与主副本的选举,所以实际上该仲裁副本也就不需要存储或维护日志,也不需要回放并持久化对应的数据,其仅存储对应的关于成员列表的元数据即可,仲裁副本之所以需要存储对应的成员列表的元数据是因为该仲裁副本需要参与针对主副本的选举的投票,所以实际上该仲裁副本的作用也可以认为是参与选主。当然,仲裁副本上维护的关于成员列表的元数据的数据量是远小于普通副本维护的数据的数据量的。因为仲裁副本并没有维护对应的数据和日志,该仲裁副本也仅是参与选举,但不能被选举为主副本,否则该数据库系统可能会因为选举出的主副本缺少对应的数据而无法正常提供服务。
选举出的主副本可以用于接收用户发送的读写请求,主副本在针对该读写请求完成数据更新后,可以将对应的更新后的数据同步至各个备副本,从而确保主副本、备副本均维护有相同的数据。但是,如前所述,该主副本并不会向要求仲裁副本参与数据同步,其只要求仲裁副本参与主副本的选举。以图1所示实施例为例,假设普通副本11被选举为主副本,则该普通副本11可以接收用户发送的读写请求,并与普通副本12、普通副本13和普通副本14之间实现数据同步。且该选举出的主副本(普通副本11)可以设定有对应的任期时长,譬如10秒,主副本(普通副本11)可以在当前任期内向仲裁副本10、普通副本11、普通副本12、普通副本13和普通副本14申请延期其任期,当然,因为普通副本11为延展任期的发起者,故可以默认该主副本获得一票普通副本11对应的赞同票。
步骤204、若在当前任期结束前得到超过所述成员列表的成员数量半数的赞同票,则所述主副本确认自身的任期成功延展,否则所述主副本将自身降级为备副本。
仍以如前所述的10秒为任期时长为例,该普通副本11可以在当前任期内(10秒内)向仲裁副本10、普通副本11、普通副本12、普通副本13和普通副本14申请延展其任期,在主副本(普通副本11)任期结束前,若获得三票及以上的赞同票,那么主副本任期延展成功,普通副本11继续作为主副本;若未获得三票赞同票,则普通副本11从主副本降级为备副本。当普通副本11降为备副本后,普通副本或仲裁副本可以再次发起选举,也就是说,普通副本或仲裁副本在当前周期内自身并没有记载有对应的主副本时,可以发起主副本的选举,从而选出对应的主副本,当然普通副本11也有可能再次被选举为主副本,从而可以确保在每个周期内都有对应的主副本并满足用户的读写需求。
如前所述,仲裁副本基于自身维护的针对成员列表的元数据,可以仅参与主副本的选举过程,也就是说,仲裁副本并不会参与数据同步的过程。有鉴于此,在一实施例中,当主副本在接收到针对所述数据的数据更新请求后,基于所述主副本自身维护的成员列表主副本可以向所述普通副本发起数据同步投票,所述成员列表记录有所述仲裁副本和所述多个普通副本,也就是说,虽然此时成员列表中有仲裁副本,但是主副本不会向仲裁副本发起数据同步投票。以图1为例,若主副本为普通副本11,该主副本维护的成员列表中可以记载有仲裁副本10、普通副本11、普通副本12、普通副本13和普通副本14,也就是说成员数量为五,该普通副本11在接收到针对所述数据的数据更新请求后,该选举为主副本的普通副本11可以向普通副本11、普通副本12、普通副本13和普通副本14发起数据同步投票。
备副本在接收到主副本发起的数据同步投票后,可以执行相应的数据同步操作。而备副本在完成数据同步操作后,可以向主副本发送对应的第一确认票。例如,普通副本12、普通副本13和普通副本14在完成数据同步操作后,即可向主副本(即普通副本11)发送对应的第一确认票。
主副本在获得超过成员列表的成员数量半数的第一确认票后,即可确认数据更新请求处理完成。如前所述,成员列表中可以包括普通副本11、普通副本12、普通副本13、普通副本14和仲裁副本10,也就是说成员数量为五,而达到半数的第一确认票是指主副本至少需要获得三票第一确认票,才能确认数据更新请求处理完成。所以,虽然仲裁副本10不参与数据同步投票,但是主区域内已经存在有四个普通副本(包括主副本),可以满足多数派数量的要求,故依旧可以完成数据同步,并且实际上,普通副本11为主副本,那么在针对数据同步投票时,该主副本默认收到自身发送的第一确认票,所以,主副本接收到两票非自身发送的第一确认票即可认为数据同步完成。
可以理解的是,如前所述,因为在成员数量为五的情况下,仅需有三票第一确认票即可认为数据同步完成,那么在图1所示实施例的基础上,即便任一普通副本出现异常如普通副本14,剩余存在的三个普通副本(普通副本11、普通副本12和普通副本13),依旧可以满足多数派数量的要求(可以达成三票第一确认票),不会影响到服务的正常运行,即便该异常的普通副本为主副本,那么剩余普通副本和仲裁副本可以再次选举出新的主副本,也不会影响到服务的正常运行。
然而,假设出现异常的普通副本数量大于1,如两个普通副本出现异常,则在成员数量为五的情况下,无法达成三票第一确认票(因为仲裁副本不参与投票),会导致服务的中断,故在一实施例中,主副本在未获得超过所述成员列表的成员数量半数的第一确认票的情况下,可以将出现异常的至少一对普通副本从所述主副本自身维护的所述成员列表中移除并基于移除后的成员列表再次向所述普通副本发起所述数据同步投票。例如,假设在普通副本14出现异常后,普通副本13也出现了异常,那么主副本就无法获得超过成员列表的成员数量的半数的第一确认票,此时会导致数据同步无法继续执行,造成服务中断。有鉴于此,为了确保服务的正常运行,主副本可以将普通副本13和普通副本14这一对普通副本从成员列表中移除,如图3所示,图3是本说明书一示例性实施例提供的一种移除至少一对普通副本的示意图。在移除普通副本13和普通副本14后,成员列表的成员数量变为三,具体为普通副本11、普通副本12和仲裁副本10,而在成员数量变为三后,对应的多数派数量要求也就变成了二,即主副本需要接收到两票第一确认票,那么普通副本11和普通副本12对应的第一确认票也就可以满足该多数派的数量要求,数据同步可以继续执行,在仲裁副本不参与数据同步投票的前提下,依旧可以确保服务可以正常运行。需要说明的是,虽然在图3所示的实施例中,是由同一数据中心的一对普通副本发生异常,但是,在一些实施例中,假设不同数据中心的一对普通副本发生异常,例如普通副本12和普通副本13发生异常,此时依旧可以将该普通副本12和普通副本13从对应的成员列表中移除,从而保证服务正常运行。
当然,如前所述,数据中心的数量可以是多个,下面以3个数据中心为例,详细介绍在3个数据中心的情况下,如何解决上述服务中断的问题。如图4所示,图4是本说明书一示例性实施例提供的一种三个数据中心的示意图。在三个数据中心的场景下,可以额外增加普通副本40和普通副本41,那么主副本对应的成员列表的成员数量为七,成员列表具体可以为:普通副本11、普通副本12、普通副本13、普通副本14、普通副本40、普通副本41和仲裁副本10。此时多数派的数量要求为四,换言之,主副本只要接收到四票由普通副本反馈的第一确认票即可确认完成数据同步(包括自身发送的第一确认票)。那么实际上此时分布式数据库系统可以容忍1对普通副本出现异常,因为在一对普通副本出现异常后,剩余四个普通副本依旧满足该多数派的数量要求,并不会对服务造成影响。当然,假设在此基础上,又一普通副本出现异常,此时因为剩余三个普通副本,主副本无法获得如前所述的四票第一确认票,会导致服务中断。那么主副本可以将出现异常的至少一对普通副本从成员列表中移除。如图5所示,图5是本说明书一示例性实施例提供的另一种移除至少一对普通副本的示意图。假设普通副本14、普通副本40和普通副本41出现异常,主副本可以将普通副本50和普通副本51这一对普通副本从成员列表中移除,此时成员列表对应的成员数量为五,对应的多数派数量要求为三,那么剩下的普通副本11、普通副本12和普通副本13可以满足多数派数量的要求,保证服务的正常运行。所以,由上述两个实施例可知,即使仲裁副本不参与数据同步投票,单个普通副本出现异常并不会影响到服务的正常运行,只有当一定数量的普通副本出现异常后,才会导致因不满足多数派数量的要求造成的服务中断,此时只需将至少一对出现异常的普通副本从成员列表中删除即可实现服务的正常运行。假设存在多个主区域时,如主区域A和主区域B,依旧可以执行上述移除操作,其原理与上述相同,本说明书在此不再赘述。
如前所述,在五副本的场景下,分布式数据库系统可以忍受一个普通副本出现异常,具有较高的可用性;而假设一对普通副本出现异常,则需要将其从成员列表中移除,就可以确保服务的正常运行,此时若再出现异常的普通副本,则无法进一步通过上述移除操作实现服务的恢复,造成服务的暂停,影响分布式数据库系统的可用性。所以,在一实施例中,主副本在检测到普通副本从异常恢复为正常的情况下,所述主副本可以将恢复正常的所述普通副本添加至所述主副本自身维护的所述成员列表中。举例而言,普通副本13和普通副本14因为出现异常而从成员列表中移除后,主副本可以通过消息探测感知该出现异常的普通副本是否恢复,若已恢复正常,则可以将其再次添加至成员列表中,从而使分布式数据库系统再次可以容忍一个普通副本出现异常,恢复系统的高可用。
在一实施例中,主副本响应于针对所述分布式数据库系统的扩容需求,可以将扩容的普通副本添加至所述主副本自身维护的所述成员列表中。例如,假设数据中心对应的一对普通副本已无法满足数据量的需求,此时可以将数据中心对应的一对普通副本扩容至两对,并将扩容的普通副本添加至主副本维护的成员列表中,从而满足分布式数据库系统的扩容需求。
仲裁副本中仅维护有必要的与成员列表相关的元数据,并不维护数据变更日志和对应的数据。在相关技术中,当成员列表发生变更时,主副本需要将对应的成员变更信息写入至数据日志中,也就是说,普通副本和仲裁副本需要从主副本发送的数据日志中解析出成员变更信息,才能实现成员列表的更新,然而相关技术中的方案会加重仲裁副本的负担,使其不得不接收数据日志,对网络带宽的需求较高,有鉴于此,本说明书提出了一种独立生成成员变更日志的方案,如图6所示,图6是本说明书一示例性实施例提供的一种独立生成成员变更日志的示意图。主副本在更新自身维护的所述成员列表后,可以生成对应的成员变更日志并同步至所述备副本和所述仲裁副本,所述成员变更日志与数据日志归属于不同的日志流;主副本在获得超过其维护的更新后的成员列表的成员数量的半数的第二确认票后,主副本可以确定针对所述成员变更日志同步完成,第二确认票由所述仲裁副本和所述备副本在接收到由所述主副本发送的成员变更日志后,更新自身维护的所述成员列表,并在所述成员列表更新完成的情况下,向所述主副本所发送。通过独立生成成员变更日志,使得仲裁副本10在接收到成员变更日志后,可以直接基于该成员变更日志更新并持久化自身维护的成员列表,不再需要接收数据日志,也不再需要从数据日志中解析出成员变更信息,不仅加快了仲裁副本成员列表更新的效率,同时也使得主区域和备区域仅交互少量关于成员列表的元数据成为可能,提升了数据管理的灵活性,减小了网络带宽,节约了成本。仲裁副本和普通副本在更新并持久化自身维护的成员列表后,可以向主副本发送对应的第二确认票,而主副本在接收到超过半数的更新后的成员列表的成员数量后,可以确认成员变更同步完成。因为仲裁副本需要和主副本维护的成员列表保持一致,才能使仲裁副本可靠地参与主副本的选举,所以也可以确认主副本收到的超过半数的第二确认票中存在由仲裁副本发送的第二确认票时,确认成员变更同步完成。
图7是本说明书一示例性实施例提供的一种分布式数据库系统数据的同步方法的流程图,所述分布式数据库系统包括仲裁副本和多个普通副本,各普通副本维护有同一数据,所述仲裁副本不维护所述数据及日志,所述普通副本部署于多个数据中心,每个数据中心配置有至少一对所述普通副本且所述多个数据中心位于至少一个主区域,所述仲裁副本部署于备区域;若任一普通副本为所述数据的主副本、其他普通副本为备副本,则所述方法应用于所述备副本,可以包括以下步骤:
步骤702、在确定自身没有记载处于任期内的所述数据的主副本的情况下,在所述仲裁副本和所述多个普通副本中发起针对所述数据的主副本的分布式选举,并将获得超过所述成员列表的成员数量的半数的赞同票的普通副本选举为所述主副本。
在一实施例中,备副本在接收到由所述主副本发起的数据同步投票后,执行数据同步操作,并在所述数据同步操作执行完成的情况下,向所述主副本发送针对所述数据同步投票的第一确认票,以使所述主副本在获得超过成员列表的成员数量半数的第一确认票后,确认数据更新请求处理完成,所述数据同步投票由所述主副本在接收到针对所述数据的数据更新请求后,基于所述主副本自身维护的成员列表向所述普通副本所发起,所述成员列表记录有所述仲裁副本和所述多个普通副本。
如前所述,主副本可以生成独立的成员变更日志,不需要再侵入写入至数据日志中,故备副本在接收到由所述主副本发送的成员变更日志后,可以直接更新自身维护的所述成员列表,并在所述成员列表更新完成的情况下,向所述主副本发送针对所述成员变更日志同步的第二确认票,以使所述主副本在获得超过其维护的更新后的成员列表的成员数量的半数的第二确认票后,所述主副本确定针对所述成员变更日志同步完成,所述成员变更日志与数据日志归属于不同的日志流,且由所述主副本在更新自身维护的所述成员列表后所生成。
基于上述实施例可知,通过将备区域部署日志副本替换为仲裁副本,使得该仲裁副本只需要参与针对主副本的选举过程即可,不再需要参与针对数据日志的投票过程,减少了数据同步的响应时长;同时该仲裁副本也不再需要维护普通副本对应的数据及日志,只需要与主副本进行针对成员列表的元数据的交互,以进行主副本的选举,减少了与主副本交互的数据量,节约了网络带宽,节省了运营成本。
与前述方法的实施例相对应,本说明书还提供了装置、电子设备以及存储介质的实施例。
图8是一示例性实施例提供的一种电子设备的示意结构图。请参考图8,在硬件层面,该设备包括处理器801、网络接口802、内存803、非易失性存储器804以及内部总线805,当然还可能包括其他业务所需要的硬件。本说明书一个或多个实施例可以基于软件方式来实现,比如由处理器801从非易失性存储器804中读取对应的计算机程序到内存803中然后运行。当然,除了软件实现方式之外,本说明书一个或多个实施例并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。
图9是一示例性实施例提供的一种分布式数据库系统数据的同步装置的框图,所述分布式数据库系统包括仲裁副本和多个普通副本,各普通副本维护有同一数据,所述仲裁副本不维护所述数据及日志,所述普通副本部署于多个数据中心,每个数据中心配置有至少一对所述普通副本且所述多个数据中心位于至少一个主区域,所述仲裁副本部署于备区域;若任一普通副本为所述数据的主副本、其他普通副本为备副本,则所述方法应用于所述主副本,该装置包括:
任期延展单元902,用于在当前任期内基于其自身维护的成员列表向所述仲裁副本和所述多个普通副本申请延展其任期;
确认单元904,用于若在当前任期结束前得到超过所述成员列表的成员数量半数的赞同票,则所述主副本确认自身的任期成功延展,否则所述主副本将自身降级为备副本
可选地,所述装置还包括:
数据同步发起单元906,用于在接收到针对所述数据的数据更新请求后,基于所述主副本自身维护的成员列表向所述普通副本发起数据同步投票,所述成员列表记录有所述仲裁副本和所述多个普通副本;在获得超过所述成员列表的成员数量半数的第一确认票后,所述主副本确认所述数据更新请求处理完成,所述第一确认票由所述备副本在接收到由所述主副本发起的数据同步投票后,执行数据同步操作,并在所述数据同步操作执行完成的情况下,向所述主副本所发送。
可选地,所述装置还包括:
移除单元908,用于在未获得超过所述成员列表的成员数量半数的第一确认票的情况下,将出现异常的至少一对普通副本从所述主副本自身维护的所述成员列表中移除并基于移除后的成员列表再次向所述普通副本发起所述数据同步投票。
可选地,所述至少一对普通副本包括位于同一所述数据中心的一对普通副本。
可选地,所述装置还包括:
恢复单元910,用于在检测到所述普通副本从异常恢复为正常的情况下,将恢复正常的所述普通副本添加至所述主副本自身维护的所述成员列表中。
可选地,所述装置还包括:
扩容单元912,用于响应于针对所述分布式数据库系统的扩容需求,将扩容的普通副本添加至所述主副本自身维护的所述成员列表中。
可选地,所述装置还包括:
变更日志生成单元914,用于在更新自身维护的所述成员列表后,生成对应的成员变更日志并同步至所述备副本和所述仲裁副本,所述成员变更日志与数据日志归属于不同的日志流;在获得超过其维护的更新后的成员列表的成员数量的半数的第二确认票后,所述主副本确定针对所述成员变更日志同步完成,所述第二确认票由所述仲裁副本和所述备副本在接收到由所述主副本发送的成员变更日志后,更新自身维护的所述成员列表,并在所述成员列表更新完成的情况下,向所述主副本所发送。
图10是一示例性实施例提供的一种分布式数据库系统数据的同步装置的框图。请参考图10,该分布式数据库系统包括仲裁副本和多个普通副本,各普通副本维护有同一数据,所述仲裁副本不维护所述数据及日志,所述普通副本部署于多个数据中心,每个数据中心配置有至少一对所述普通副本且所述多个数据中心位于至少一个主区域,所述仲裁副本部署于备区域;若任一普通副本为所述数据的主副本、其他普通副本为备副本,则所述装置应用于所述备副本,该装置包括:
选举发起单元1002,用于在确定自身没有记载处于任期内的所述数据的主副本的情况下,在所述仲裁副本和所述多个普通副本中发起针对所述数据的主副本的分布式选举,并将获得超过所述成员列表的成员数量的半数的赞同票的普通副本选举为所述主副本。
数据同步执行单元1004,用于在接收到由所述主副本发起的数据同步投票后,执行数据同步操作,并在所述数据同步操作执行完成的情况下,向所述主副本发送针对所述数据同步投票的第一确认票,以使所述主副本在获得超过成员列表的成员数量半数的第一确认票后,确认数据更新请求处理完成,所述数据同步投票由所述主副本在接收到针对所述数据的数据更新请求后,基于所述主副本自身维护的成员列表向所述普通副本所发起,所述成员列表记录有所述仲裁副本和所述多个普通副本。
变更日志接收单元1006,用于在接收到由所述主副本发送的成员变更日志后,更新自身维护的所述成员列表,并在所述成员列表更新完成的情况下,向所述主副本发送针对所述成员变更日志同步的第二确认票,以使所述主副本在获得超过其维护的更新后的成员列表的成员数量的半数的第二确认票后,所述主副本确定针对所述成员变更日志同步完成,所述成员变更日志与数据日志归属于不同的日志流,且由所述主副本在更新自身维护的所述成员列表后所生成。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本说明书方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
在一个典型的配置中,计算机设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本说明书相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本说明书的一些方面相一致的装置和方法的例子。
在本说明书使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书。在本说明书和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本说明书可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
以上所述仅为本说明书的较佳实施例而已,并不用以限制本说明书,凡在本说明书的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本说明书保护的范围之内。

Claims (21)

1.一种分布式数据库系统,包括仲裁副本和多个普通副本,各普通副本维护有同一数据,所述仲裁副本不维护所述数据及日志,所述普通副本部署于多个数据中心,每个数据中心配置有至少一对所述普通副本且所述多个数据中心位于至少一个主区域,所述仲裁副本部署于备区域;若任一普通副本为所述数据的主副本、其他普通副本为备副本:
所述主副本用于在当前任期内基于其自身维护的成员列表向所述仲裁副本和所述多个普通副本申请延展其任期;以及,若在当前任期结束前得到超过所述成员列表的成员数量半数的赞同票,则所述主副本确认自身的任期成功延展,否则所述主副本将自身降级为备副本;
所述仲裁副本和所述备副本用于在确定自身没有记载处于任期内的所述数据的主副本的情况下,在所述仲裁副本和所述多个普通副本中发起针对所述数据的主副本的分布式选举,并将获得超过所述成员列表的成员数量的半数的赞同票的普通副本选举为所述主副本。
2.根据权利要求1所述的系统,
所述主副本还用于在接收到针对所述数据的数据更新请求后,基于所述主副本自身维护的成员列表向所述普通副本发起数据同步投票,所述成员列表记录有所述仲裁副本和所述多个普通副本;以及,在获得超过所述成员列表的成员数量半数的第一确认票后,所述主副本确认所述数据更新请求处理完成;
所述备副本还用于在接收到由所述主副本发起的数据同步投票后,执行数据同步操作,并在所述数据同步操作执行完成的情况下,向所述主副本发送针对所述数据同步投票的第一确认票。
3.根据权利要求2所述的系统,所述主副本还用于:
在未获得超过所述成员列表的成员数量半数的第一确认票的情况下,将出现异常的至少一对普通副本从所述主副本自身维护的所述成员列表中移除并基于移除后的成员列表再次向所述普通副本发起所述数据同步投票。
4.根据权利要求3所述的系统,所述至少一对普通副本包括位于同一所述数据中心的一对普通副本。
5.根据权利要求1所述的系统,所述主副本还用于:
在检测到所述普通副本从异常恢复为正常的情况下,将恢复正常的所述普通副本添加至所述主副本自身维护的所述成员列表中。
6.根据权利要求1所述的系统,所述主副本还用于:
所述主副本响应于针对所述分布式数据库系统的扩容需求,将扩容的普通副本添加至所述主副本自身维护的所述成员列表中。
7.根据权利要求1所述的系统,
所述主副本还用于在更新自身维护的所述成员列表后,生成对应的成员变更日志并同步至所述备副本和所述仲裁副本,所述成员变更日志与数据日志归属于不同的日志流;以及,所述主副本在获得超过其维护的更新后的成员列表的成员数量的半数的第二确认票后,所述主副本确定针对所述成员变更日志同步完成;
所述仲裁副本和所述备副本还用于在接收到由所述主副本发送的成员变更日志后,更新自身维护的所述成员列表,并在所述成员列表更新完成的情况下,向所述主副本发送针对所述成员变更日志同步的第二确认票。
8.一种分布式数据库系统数据的同步方法,所述分布式数据库系统包括仲裁副本和多个普通副本,各普通副本维护有同一数据,所述仲裁副本不维护所述数据及日志,所述普通副本部署于多个数据中心,每个数据中心配置有至少一对所述普通副本且所述多个数据中心位于至少一个主区域,所述仲裁副本部署于备区域;若任一普通副本为所述数据的主副本、其他普通副本为备副本,则所述方法应用于所述主副本,所述方法包括:
在当前任期内基于其自身维护的成员列表向所述仲裁副本和所述多个普通副本申请延展其任期;
若在当前任期结束前得到超过所述成员列表的成员数量半数的赞同票,则所述主副本确认自身的任期成功延展,否则所述主副本将自身降级为备副本。
9.根据权利要求8所述的方法,所述方法还包括:
在接收到针对所述数据的数据更新请求后,基于所述主副本自身维护的成员列表向所述普通副本发起数据同步投票,所述成员列表记录有所述仲裁副本和所述多个普通副本;
在获得超过所述成员列表的成员数量半数的第一确认票后,所述主副本确认所述数据更新请求处理完成,所述第一确认票由所述备副本在接收到由所述主副本发起的数据同步投票后,执行数据同步操作,并在所述数据同步操作执行完成的情况下,向所述主副本所发送。
10.根据权利要求9所述的方法,所述方法还包括:
在未获得超过所述成员列表的成员数量半数的第一确认票的情况下,将出现异常的至少一对普通副本从所述主副本自身维护的所述成员列表中移除并基于移除后的成员列表再次向所述普通副本发起所述数据同步投票。
11.根据权利要求10所述的方法,所述至少一对普通副本包括位于同一所述数据中心的一对普通副本。
12.根据权利要求8所述的方法,所述方法还包括:
在检测到所述普通副本从异常恢复为正常的情况下,将恢复正常的所述普通副本添加至所述主副本自身维护的所述成员列表中。
13.根据权利要求8所述的方法,所述方法还包括:
响应于针对所述分布式数据库系统的扩容需求,将扩容的普通副本添加至所述主副本自身维护的所述成员列表中。
14.根据权利要求8所述的方法,所述方法还包括:
在更新自身维护的所述成员列表后,生成对应的成员变更日志并同步至所述备副本和所述仲裁副本,所述成员变更日志与数据日志归属于不同的日志流;
在获得超过其维护的更新后的成员列表的成员数量的半数的第二确认票后,所述主副本确定针对所述成员变更日志同步完成,所述第二确认票由所述仲裁副本和所述备副本在接收到由所述主副本发送的成员变更日志后,更新自身维护的所述成员列表,并在所述成员列表更新完成的情况下,向所述主副本所发送。
15.一种分布式数据库系统数据的同步方法,所述分布式数据库系统包括仲裁副本和多个普通副本,各普通副本维护有同一数据,所述仲裁副本不维护所述数据及日志,所述普通副本部署于多个数据中心,每个数据中心配置有至少一对所述普通副本且所述多个数据中心位于至少一个主区域,所述仲裁副本部署于备区域;若任一普通副本为所述数据的主副本、其他普通副本为备副本,则所述方法应用于所述备副本,所述方法包括:
在确定自身没有记载处于任期内的所述数据的主副本的情况下,在所述仲裁副本和所述多个普通副本中发起针对所述数据的主副本的分布式选举,并将获得超过所述成员列表的成员数量的半数的赞同票的普通副本选举为所述主副本。
16.根据权利要求15所述的方法,所述方法还包括:
在接收到由所述主副本发起的数据同步投票后,执行数据同步操作,并在所述数据同步操作执行完成的情况下,向所述主副本发送针对所述数据同步投票的第一确认票,以使所述主副本在获得超过成员列表的成员数量半数的第一确认票后,确认数据更新请求处理完成,所述数据同步投票由所述主副本在接收到针对所述数据的数据更新请求后,基于所述主副本自身维护的成员列表向所述普通副本所发起,所述成员列表记录有所述仲裁副本和所述多个普通副本。
17.根据权利要求15所述的方法,所述方法还包括:
在接收到由所述主副本发送的成员变更日志后,更新自身维护的所述成员列表,并在所述成员列表更新完成的情况下,向所述主副本发送针对所述成员变更日志同步的第二确认票,以使所述主副本在获得超过其维护的更新后的成员列表的成员数量的半数的第二确认票后,所述主副本确定针对所述成员变更日志同步完成,所述成员变更日志与数据日志归属于不同的日志流,且由所述主副本在更新自身维护的所述成员列表后所生成。
18.一种分布式数据库系统数据的同步装置,所述分布式数据库系统包括仲裁副本和多个普通副本,各普通副本维护有同一数据,所述仲裁副本不维护所述数据及日志,所述普通副本部署于多个数据中心,每个数据中心配置有至少一对所述普通副本且所述多个数据中心位于至少一个主区域,所述仲裁副本部署于备区域;若任一普通副本为所述数据的主副本、其他普通副本为备副本,则所述装置应用于所述主副本,所述装置包括:
任期延展单元,用于在当前任期内基于其自身维护的成员列表向所述仲裁副本和所述多个普通副本申请延展其任期;
确认单元,用于若在当前任期结束前得到超过所述成员列表的成员数量半数的赞同票,则所述主副本确认自身的任期成功延展,否则所述主副本将自身降级为备副本。
19.一种分布式数据库系统数据的同步装置,所述分布式数据库系统包括仲裁副本和多个普通副本,各普通副本维护有同一数据,所述仲裁副本不维护所述数据及日志,所述普通副本部署于多个数据中心,每个数据中心配置有至少一对所述普通副本且所述多个数据中心位于至少一个主区域,所述仲裁副本部署于备区域;若任一普通副本为所述数据的主副本、其他普通副本为备副本,则所述装置应用于所述备副本,所述装置包括:
选举发起单元,用于在确定自身没有记载处于任期内的所述数据的主副本的情况下,在所述仲裁副本和所述多个普通副本中发起针对所述数据的主副本的分布式选举,并将获得超过所述成员列表的成员数量的半数的赞同票的普通副本选举为所述主副本。
20.一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现如权利要求8至14或15至17中任一所述方法的步骤。
21.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如权利要求8至14或15至17中任一所述方法的步骤。
CN202211327316.2A 2022-10-25 2022-10-25 一种分布式数据库系统及其数据的同步方法、装置 Pending CN115687520A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211327316.2A CN115687520A (zh) 2022-10-25 2022-10-25 一种分布式数据库系统及其数据的同步方法、装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211327316.2A CN115687520A (zh) 2022-10-25 2022-10-25 一种分布式数据库系统及其数据的同步方法、装置

Publications (1)

Publication Number Publication Date
CN115687520A true CN115687520A (zh) 2023-02-03

Family

ID=85098712

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211327316.2A Pending CN115687520A (zh) 2022-10-25 2022-10-25 一种分布式数据库系统及其数据的同步方法、装置

Country Status (1)

Country Link
CN (1) CN115687520A (zh)

Similar Documents

Publication Publication Date Title
CN106776130B (zh) 一种日志恢复方法、存储装置和存储节点
US8984330B2 (en) Fault-tolerant replication architecture
EP3399692B1 (en) Method and apparatus for upgrading distributed storage system
CN110807064B (zh) Rac分布式数据库集群系统中的数据恢复装置
US20210320977A1 (en) Method and apparatus for implementing data consistency, server, and terminal
CN101136728A (zh) 群集系统和用于备份群集系统中的副本的方法
US9525733B2 (en) Method and system for data synchronization
CN107038192B (zh) 数据库容灾方法和装置
CN112948064B (zh) 一种数据读取方法、装置及数据读取系统
CN106815094B (zh) 一种用于实现主备同步模式下事务提交的方法与设备
CN114253743A (zh) 消息同步方法、装置、节点及可读存储介质
CN112181723A (zh) 一种金融灾备方法、装置、存储介质及电子设备
CN113297173B (zh) 分布式数据库集群管理方法及装置、电子设备
CN105893176A (zh) 一种网络存储系统的管理方法和装置
CN115687520A (zh) 一种分布式数据库系统及其数据的同步方法、装置
CN115687519A (zh) 一种分布式数据库系统及其成员变更的同步方法、装置
CN116361078A (zh) 数据同步方法、装置、系统和介质
CN114172917B (zh) 一种分布式缓存系统及其部署的方法
CN116389233A (zh) 容器云管理平台主备切换系统、方法、装置和计算机设备
CN113535430B (zh) 应用数据读写分离方法、装置、计算机设备和存储介质
CN111176886A (zh) 一种数据库模式的切换方法、装置及电子设备
CN114442944A (zh) 一种数据复制方法、系统及设备
CN114003612A (zh) 针对数据库异常状况的处理方法及处理系统
CN114265900A (zh) 一种数据处理方法、装置、电子设备及存储介质
CN112433887A (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