In the data synchronization method provided by the invention, the source data node can normally process the data operation instructions sent by the application client, and generate the data replication log to be sent to the destination data node. The destination data node can receive the data copy log sent by the source data node when the data node is upgraded. When the version of the source data node is higher than its version, the data replication log is first cached. After the version upgrade is completed, data replication is done according to the replication log of the cache, and the synchronization between the source data node and the destination data node is completed. Compared with the existing technology, the upgrading method provided by the embodiment of the invention enables the source data node and the destination data node to process data operation commands sent by the application client while upgrading, and improves the reliability of the distributed database.
【技术实现步骤摘要】
分布式数据库数据同步方法、相关装置及系统
本专利技术涉及数据库
,具体而言涉及一种分布式数据库数据同步方法、相关装置及系统。
技术介绍
近年来,随着数据量的高速增长,分布式数据库技术也得到了快速的发展,传统的关系型数据库开始从集中式向分布式发展。分布式数据库具体指利用高速计算机网络将物理上分散的多个数据存储节点连接起来组成一个逻辑上统一的数据库。分布式数据库的基本思想是将原来集中式数据库中的数据分散存储到多个通过网络连接的数据存储节点上,以获取更大的存储容量和更高的并发访问量。现有技术提供了一种分布式数据库,如图1所示,数据节点1和数据节点2上存储了相同的数据,数据节点1和数据节点2均处于运行(Active)状态。数据操作指令可以发送到数据节点1或数据节点2进行执行,一个数据节点执行数据操作指令后,将执行结果通过复制日志的形式同步到另一数据节点,另一数据节点根据复制日志进行数据复制,从而实现数据节点1和2之间的数据同步。但是,分布式数据库在数据同步的过程中,存在需要对数据库进行升级的场景,例如对数据库中的数据模型增加字段、删除字段。现有技术提供了一种基于数据节点的数据同步方法,下面以数据节点2升级来介绍该方法,该方法主要包括如下步骤:S1、节点1暂停处理应用客户端发送的数据操作命令以及节点1和节点2之间暂停数据复制日志的传输。S2、节点2接收升级指令,执行版本升级操作,然后节点2接收应用客户端发送的数据操作命令并执行,记录数据复制日志。S3、节点2在升级完成后,将升级指令和数据复制日志发送给节点1,节点1接收节点2发送的数据复制日志和升级命令。S4、 ...
【技术保护点】
一种分布式数据库数据同步方法,应用于所述分布式数据库中的目的数据节点,其特征在于,所述目的数据节点在执行应用客户端发送的数据操作指令时,还包括:接收源数据节点发送的数据复制日志,所述复制日志中携带需要同步到所述目的节点的数据;获取所述源数据节点的版本,确定所述源数据节点的版本高于自身的版本时,缓存所述复制日志;接收元数据服务器发送的升级指令,所述升级指令用于指示所述目的数据节点进行版本升级;根据所述升级指令进行升级,在升级完成后,根据所述缓存的复制日志进行数据复制。
【技术特征摘要】
1.一种分布式数据库数据同步方法,应用于所述分布式数据库中的目的数据节点,其特征在于,所述目的数据节点在执行应用客户端发送的数据操作指令时,还包括:接收源数据节点发送的数据复制日志,所述复制日志中携带需要同步到所述目的节点的数据;获取所述源数据节点的版本,确定所述源数据节点的版本高于自身的版本时,缓存所述复制日志;接收元数据服务器发送的升级指令,所述升级指令用于指示所述目的数据节点进行版本升级;根据所述升级指令进行升级,在升级完成后,根据所述缓存的复制日志进行数据复制。2.根据权利要求1所述的方法,其特征在于,所述获取源数据节点的版本包括:根据所述数据复制日志获取所述源数据节点的版本,所述数据复制日志中携带所述源数据节点的版本;或者接收所述源数据节点发送的通知消息,所述通知消息中携带所述源数据节点的版本,根据所述通知消息获取所述源数据节点的版本。3.根据权利要求2所述的方法,其特征在于,所述方法还包括:【数据日志同步到源数据节点】在执行所述数据操作指令时,生成数据复制日志,所述数据复制日志中携带需要同步到与所述目的数据节点对应的数据节点的数据;向所述源数据节点发送所述数据复制日志。4.根据权利要求1所述的方法,其特征在于,还包括:【源节点版本低】确定所述源数据节点的版本低于自身的版本时,根据所述复制日志进行数据复制。5.根据权利要求3所述的方法,其特征在于,所述向源数据节点发送所述数据复制日志具体包括:将所述复制日志放到本机发送队列发送给所述源数据节点。6.一种分布式数据库的目的数据节点,其特征在于,包括:数据操作指令处理单元...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。