分布式数据库系统及其数据同步方法和节点技术方案

技术编号:10924294 阅读:165 留言:0更新日期:2015-01-19 04:16
本发明专利技术公开了一种分布式数据库系统及其数据同步方法和节点,其中,该方法包括:分布式数据的一个复制组中,主节点获取操作源设备发送的数据更新操作,并向该复制组中的一个或多个从节点发送所述数据更新操作。通过本发明专利技术,采用发送数据更新操作而不是更新后的整个数据文件,避免了文件损坏导致的数据丢失的问题,同时,避免了由客户端设备直接向各个节点发送数据更新操作导致客户端设备多次重发的问题,有效地提高了分布式数据库系统的可靠性和稳定性。

【技术实现步骤摘要】
【专利摘要】本专利技术公开了一种分布式数据库系统及其数据同步方法和节点,其中,该方法包括:分布式数据的一个复制组中,主节点获取操作源设备发送的数据更新操作,并向该复制组中的一个或多个从节点发送所述数据更新操作。通过本专利技术,采用发送数据更新操作而不是更新后的整个数据文件,避免了文件损坏导致的数据丢失的问题,同时,避免了由客户端设备直接向各个节点发送数据更新操作导致客户端设备多次重发的问题,有效地提高了分布式数据库系统的可靠性和稳定性。【专利说明】分布式数据库系统及其数据同步方法和节点
本专利技术涉及通信领域,具体而言,涉及一种分布式数据库系统及其数据同步方法和节点。
技术介绍
复制组指分布式数据库的一个数据节点,一个复制组中包括至少2个节点。按照其在工作中的切换方式可分为主节点和从节点。主节点为在数据库进行增、删、改等操作时直接操作的节点,其对数据进行的各种修改要同步到从节点,从节点接受主节点的各种修改操作。 在相关技术中,使用分布式文件系统或者镜像同步软件进行数据库节点间数据的同步。其中,对于使用分布式文件系统的方案,分布式文件系统完成数据的同步和备份,当一个节点宕机或出现异常时,其它节点可以立即接管,对上层应用完全透明。对于使用第三方的镜像同步软件的方案,镜像同步软件的主从关系随着复制组内主备节点的切换而切换。如图1所示,当在镜像同步软件的主节点上写入数据时,数据文件自动同步到备节点上,对用户也是透明的。 在使用分布式文件系统或者镜像同步软件时,程序异常导致数据文件损坏时,损坏的文件也会立即同步到其它节点上。在这种情况下,即使使用其它节点接管文件损坏的节点,也无法再继续处理,只能对损坏的文件进行解析。解析损坏的文件时,需要停止当前的业务,并且要丢掉一些无法修复的数据。 另外,相关技术中还采用了由客户端直接向分布式数据库系统的多个节点发送数据更新操作的方式,在该方式下,如果多个节点中的任意节点无法完成数据更新,则客户端需要继续发送,并且同步机制复杂。 综上所述,相关技术中的分布式数据库系统的数据同步方案,降低了分布式数据库系统的可靠性和稳定性。针对上述的分布式数据库系统的可靠性和稳定性较差的问题,目前尚未提出有效的解决方案。
技术实现思路
本专利技术实施例提供了一种分布式数据库系统及其数据同步方法和节点,以至少解决相关技术中分布式数据库系统的可靠性和稳定性较差的技术问题。 根据本专利技术实施例的一个方面,提供了一种分布式数据库系统的数据同步方法,包括:主节点获取操作源设备发送的数据更新操作,其中所述数据更新操作用于更新所述分布式数据库系统的数据文件中的数据;所述主节点向一个或多个从节点发送所述数据更新操作。 优选地,上述方法还包括:所述一个或多个从节点接收所述数据更新操作;所述一个或多个从节点根据所述数据更新操作更新所述数据文件中的数据。 优选地,所述主节点向一个或多个从节点同步所述更新操作包括:所述主节点记录所述数据更新操作至文件中;所述主节点通过文件传输协议(File Transfer Protocol,简称为FTP)将所述文件传输至所述一个或多个从节点。 优选地,在所述一个或多个从节点中的数据文件出现损坏的情况下,还包括: 所述主节点暂停向数据文件损坏的从节点发送所述数据更新操作,并向所述数据文件损坏的从节点发送所述主节点上存储的数据文件。 优选地,所述主节点和所述一个或多个从节点位于分布式数据库系统复制组中。 根据本专利技术实施例的另一个方面,提供了一种主节点,位于分布式数据库系统中,包括:获取模块,用于获取操作源设备发送的数据更新操作,其中所述数据更新操作用于更新所述分布式数据库系统的数据文件中的数据;同步模块,用于向一个或多个从节点发送所述数据更新操作。 优选地,所述同步模块包括:记录单元,用于记录所述数据更新操作至文件中;传输单元,用于通过FTP将所述文件传输至所述一个或多个从节点。 根据本专利技术实施例的又一个方面,提供了一种从节点,位于分布式数据库系统中,包括:接收模块,用于接收所述分布式数据库系统中主节点发送的数据更新操作,其中所述数据更新操作用于更新了所述分布式数据库系统的数据文件中的数据;更新模块,用于根据所述数据更新操作更新所述数据文件中的数据。 优选地,所述接收模块包括:传输单元,用于通过FTP接收携带有所述数据更新操作的文件;解析单元,用于从所述文件中解析出所述数据更新操作。 根据本专利技术实施例的再一个方面,提供了一种分布式数据库系统,包括:主节点、以及一个或多个从节点,其中,所述主节点,用于获取操作源设备发送的数据更新操作,并向一个或多个从节点发送所述数据更新操作,其中所述数据更新操作用于更新所述分布式数据库系统的数据文件中的数据;所述一个或多个从节点,用于接收所述数据更新操作,并根据所述数据更新操作更新所述数据文件中的数据。 优选地,所述一个或多个从节点,还用于在所述主节点中的数据文件出现故障的情况下作为新的主节点。 在本专利技术实施例中,分布式数据主节点获取操作源设备发送的数据更新操作,并向分布式系统中同一复制组内的一个或多个从节点发送所述数据更新操作,通过发送数据更新操作而不是更新后的整个数据文件,避免了文件损坏导致的数据丢失的问题,同时,避免了由客户端设备直接向各个节点发送数据更新操作导致客户端设备多次重发的问题,有效地提高了分布式数据库系统的可靠性和稳定性。 【专利附图】【附图说明】 此处所说明的附图用来提供对本专利技术的进一步理解,构成本申请的一部分,本专利技术的示意性实施例及其说明用于解释本专利技术,并不构成对本专利技术的不当限定。在附图中: 图1是根据相关技术的数据库数据的同步方法的示意图; 图2是根据本专利技术实施例的分布式数据库系统的示意图; 图3是根据本专利技术实施例的分布式数据库系统的数据同步的示意图; 图4是根据本专利技术实施例的主节点的结构框图; 图5是根据本专利技术实施例的从节点的结构框图; 图6是根据本专利技术实施例的分布式数据库系统的数据同步方法的流程图; 图7是根据本专利技术优选实施例的数据同步的实现方法的流程图; 图8是根据本专利技术优选实施例的从机出现故障时的数据同步的流程图;以及 图9是根据本专利技术优选实施例的主机出现故障时的数据同步的流程图。 【具体实施方式】 下文中将参考附图并结合实施例来详细说明本专利技术。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。 根据本专利技术实施例,提供了一种分布式数据库系统。 图2是根据本专利技术实施例的分布式数据库系统的示意图,如图2所示,该系统包括主节点202和至少一个从节点204,其中,主节点202,用于获取操作源设备发送的数据更新操作,并向一个或多个从节点204发送数据更新操作,其中该数据更新操作用于更新分布式数据库系统的数据文件中的数据;一个或多个从节点204,用于接收主节点202发送的上述数据更新操作,并根据该数据更新操作更新数据文件中的数据。 在本专利技术实施例的一个优选实施方式中,主节点202,可以用于周期性地或者在接收到的数据更新操作达到预定数量的情况下,向从节点204发送接收到的数据更新操作。通过设置发送数据更新操作的条件,本文档来自技高网
...

【技术保护点】
一种分布式数据库系统的数据同步方法,其特征在于,包括:主节点获取操作源设备发送的数据更新操作,其中所述数据更新操作用于更新所述分布式数据库系统的数据文件中的数据;所述主节点向一个或多个从节点发送所述数据更新操作。

【技术特征摘要】

【专利技术属性】
技术研发人员:叶成旭徐宜良
申请(专利权)人:中兴通讯股份有限公司
类型:发明
国别省市:广东;44

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

1