数据库主备集群切换方法、装置、计算机设备及存储介质制造方法及图纸

技术编号:32824473 阅读:35 留言:0更新日期:2022-03-26 20:24
本申请涉及一种数据库主备集群切换方法、装置、计算机设备、存储介质和计算机程序产品,通过增量数据底层自同步方式,将主集群中的数据同步至备集群,以使主集群和备集群中存储的高效准确同步,再周期性周期性探测所述主集群的可用性,当发现主集群不可用时,自动将后端应用服务切换至备集群,确保能够正常支持后端应用服务;另外,还继续保持对主集群可用性的监控,一旦发现主集群恢复可用时,再次将后端应用服务切换回主集群。整个过程中,通过自动同步、持续监测以及自动切换的方式实现数据库主备集群的自动切换,无需用户手动操作,给用户带来便捷。户带来便捷。户带来便捷。

【技术实现步骤摘要】
数据库主备集群切换方法、装置、计算机设备及存储介质


[0001]本申请涉及大数据资源调度
,特别是涉及一种数据库主备集群切换方法、装置、计算机设备、存储介质和计算机程序产品。

技术介绍

[0002]随着科学技术的发展,数字化和信息化广泛应用于实际生产生活中给人们带来了巨大的便捷。
[0003]数字化和信息化的推广应用伴随着产生了大量的数据,这些数据一般采用数据库的方式来进行存储以便后续进行进一步的分析与处理。目前很多场景下会采用分布式数据库集群的方式来存储,并且数据库集群中会设置备份数据库来确保数据的安全,即当侦测到主数据库集群出现异常上将链接至备份数据库集群,以确保系统的正常运行。
[0004]常规的数据库主备集群切换一般是采用Haproxy方案,具体来说,通过Haproxy里的监听器转发来实现同时链接多个分布式数据库集群,这样方式虽然通用且可以实现数据库主备集群切换,但是Haproxy方案无法实现主备自动切换。

技术实现思路

[0005]基于此,有必要针对上述技术问题,提供一种能够自动切换的数据库主备集群切换方法、装置、计算机设备、存储介质和计算机程序产品。
[0006]第一方面,本申请提供了一种数据库主备集群切换方法。所述方法包括:
[0007]通过增量数据底层自同步方式,将主集群中的数据同步至备集群;
[0008]周期性探测所述主集群的可用性;
[0009]当所述主集群不可用时,自动将后端应用服务切换至所述备集群;
[0010]持续探测所述主集群可用性,当所述主集群恢复可用时,将所述后端应用服务切换回所述主集群。
[0011]在其中一个实施例中,所述将主集群中的数据同步至备集群之前,还包括:
[0012]初始化主集群和备集群,启动所述主集群和所述备集群的复制功能;
[0013]对所述主集群和所述备集群分配不同的znode节点,以连接至相同的ZK集群;
[0014]在所述主集群和所述备集群上配置相同结构的表和列簇。
[0015]在其中一个实施例中,所述在所述主集群和所述备集群上配置相同结构的表和列簇包括:
[0016]将所述主集群上创建表和创建列簇的语句导出,得到导出语句;
[0017]将所述导出语句写入所述备集群,并控制所述备集群执行所述导出语句对应的任务。
[0018]在其中一个实施例中,所述初始化主集群和备集群,启动所述主集群和所述备集群的复制功能包括:
[0019]获取主集群和备集群的配置参数;
[0020]在所述主集群以及所述备集群中添加所述配置参数,以启动所述主集群和所述备集群的复制功能
[0021]在其中一个实施例中,所述周期性探测所述主集群的可用性包括:
[0022]通过接口API(Application Programming Interface,应用程序编程接口)向所述主集群周期性发送请求;
[0023]接收所述主集群探测反馈消息;
[0024]根据探测反馈消息与预设自定义数据表,探测所述主集群的可用性。
[0025]在其中一个实施例中,所述根据探测反馈消息与预设自定义数据表,探测所述主集群的可用性包括:
[0026]提取探测反馈消息中携带的响应code以及响应数据Json串;
[0027]判断所述响应code是否为预设正确字符;
[0028]若否,则表明所述主集群不可用;
[0029]若是,则判断所述响应数据Json串是否符合预设标准;若是,则判定所述主集群可用,若否,则判定所述主集群不可用。
[0030]第二方面,本申请还提供了一种数据库主备集群切换装置。所述装置包括:
[0031]同步模块,用于将通过增量数据底层自同步方式,主集群中的数据同步至备集群;
[0032]探测模块,用于周期性探测所述主集群的可用性;
[0033]切换模块,用于当所述主集群不可用时,自动将后端应用服务切换至所述备集群;
[0034]恢复模块,用于持续探测所述主集群可用性,当所述主集群恢复可用时,将所述后端应用服务切换回所述主集群。
[0035]在其中一个实施例中,上述数据库主备集群切换装置还包括初始化模块,用于初始化主集群和备集群,启动所述主集群和所述备集群的复制功能;对所述主集群和所述备集群分配不同的znode节点,以连接至相同的ZK集群;在所述主集群和所述备集群上配置相同结构的表和列簇。
[0036]在其中一个实施例中,所述初始化模块还用于将所述主集群上创建表和创建列簇的语句导出,得到导出语句;将所述导出语句写入所述备集群,并控制所述备集群执行所述导出语句对应的任务。
[0037]在其中一个实施例中,所述初始化模块还用于获取主集群和备集群的配置参数;在所述主集群以及所述备集群中添加所述配置参数,以启动所述主集群和所述备集群的复制功能。
[0038]在其中一个实施例中,所述探测模块还用于通过接口API向所述主集群周期性发送请求;接收所述主集群探测反馈消息;根据探测反馈消息与预设自定义数据表,探测所述主集群的可用性。
[0039]在其中一个实施例中,所述探测模块还用于提取探测反馈消息中携带的响应code以及响应数据Json串;判断所述响应code是否为预设正确字符;若否,则表明所述主集群不可用;若是,则判断所述响应数据Json串是否符合预设标准;若是,则判定所述主集群可用,若否,则判定所述主集群不可用。
[0040]第三方面,本申请还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
[0041]通过增量数据底层自同步方式,将主集群中的数据同步至备集群;
[0042]周期性探测所述主集群的可用性;
[0043]当所述主集群不可用时,自动将后端应用服务切换至所述备集群;
[0044]持续探测所述主集群可用性,当所述主集群恢复可用时,将所述后端应用服务切换回所述主集群。
[0045]第四方面,本申请还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
[0046]通过增量数据底层自同步方式,将主集群中的数据同步至备集群;
[0047]周期性探测所述主集群的可用性;
[0048]当所述主集群不可用时,自动将后端应用服务切换至所述备集群;
[0049]持续探测所述主集群可用性,当所述主集群恢复可用时,将所述后端应用服务切换回所述主集群。
[0050]第五方面,本申请还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
[0051]通过增量数据底层自同步方式,将主集群中的数据同步至备集群;
[0052]周期性探测所述主集群的可用性;
[0053本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据库主备集群切换方法,其特征在于,所述方法包括:通过增量数据底层自同步方式,将主集群中的数据同步至备集群;周期性探测所述主集群的可用性;当所述主集群不可用时,自动将后端应用服务切换至所述备集群;持续探测所述主集群可用性,当所述主集群恢复可用时,将所述后端应用服务切换回所述主集群。2.根据权利要求1所述的方法,其特征在于,所述将主集群中的数据同步至备集群之前,还包括:初始化主集群和备集群,启动所述主集群和所述备集群的复制功能;对所述主集群和所述备集群分配不同的znode节点,以连接至相同的ZK集群;在所述主集群和所述备集群上配置相同结构的表和列簇。3.根据权利要求2所述的方法,其特征在于,所述在所述主集群和所述备集群上配置相同结构的表和列簇包括:将所述主集群上创建表和创建列簇的语句导出,得到导出语句;将所述导出语句写入所述备集群,并控制所述备集群执行所述导出语句对应的任务。4.根据权利要求2所述的方法,其特征在于,所述初始化主集群和备集群,启动所述主集群和所述备集群的复制功能包括:获取主集群和备集群的配置参数;在所述主集群以及所述备集群中添加所述配置参数,以启动所述主集群和所述备集群的复制功能。5.根据权利要求1所述的方法,其特征在于,所述周期性探测所述主集群的可用性包括:通过接口API向所述主集群周期性发送请求;接收所述主集群探测反馈消息;根据探测反馈消息与预设自定义数据表,探测所述主集群的可用性。6.根据权利要求5所述的方法,其特征在于,所述根据探测反馈消息与预设自定义数据表,探测所述主集群的可用性包括:提取探测反馈消息中携带的响应code以及响应数据Json串;判断所述响应code是否为预设正确字符;若否,则表明所述主集群不可用;若是,则判断所述响应数据Json串是否符合预设标准;若是,则判定所述主集群可用,若否,则判定所述主集群不可用。7.一种数据库主备集群切换装置,其特征在于,所述装置包括:同步模块,用于通过增量数据底层自同步方式,将主集群中的数据同步至备集群;探测模块,用于周期性探测所述主集群...

【专利技术属性】
技术研发人员:刘鑫谢康
申请(专利权)人:中国建设银行股份有限公司
类型:发明
国别省市:

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

1