1.本技术涉及数据库信息技术领域,尤其涉及一种数据库集群升级方法、装置、电子设备及存储介质。
背景技术:2.随着信息技术的发展,数据库集群被广泛应用于数据的处理和存储,需要说明的是,如图1所示,数据库集群通常包括一个主节点和至少一个从节点,其中,主节点和每个从节点均可进行数据的读取和发送操作。
3.进一步地,为了保证数据库集群的安全性、稳定性和功能的完备性,需要定期对数据库集群进行版本升级,因此,在版本升级的过程中,如何实时、高效地实现数据库集群中,主从节点的版本升级具有重要意义。
4.例如,为了实时、高效地实现数据库集群的版本升级,通常基于对应原始数据库集群中,各个待升级集群节点分别设置的升级进程,以及数据库主从复制协议,分别获取各个待升级集群节点各自的版本升级数据;接着,通过各个升级进程,分别对获得的各个版本升级数据进行解析,获得各个待升级集群节点各自的版本配置信息;最终,基于获得的各个版本配置信息,分别对各个待升级集群节点进行版本升级,从而获得相应的目标数据库集群。
5.然而,采用上述数据库集群升级方法,会因外部干扰或者版本升级数据的获取过程存在问题,导致获取到的各个版本升级数据之间存在差异,从而造成升级后的各个待升级集群节点存在差异,甚至存在部分待升级集群节点升级失败的问题,这样,将无法保证数据库集群的升级准确率。
6.因此,采用上述方式,数据库集群的升级准确率较低。
技术实现要素:7.本技术实施例提供了一种数据库集群升级方法、装置、电子设备及存储介质,用以确保数据库集群的升级准确率。
8.第一方面,本技术实施例提供了一种数据库集群升级方法,所述方法包括:
9.从目标终端发送的数据库集群升级请求中,获取待升级数据库集群的版本更新数据集,并将版本更新数据集,保存至待升级数据库集群中的初始主节点;其中,待升级数据库集群按照主从模式进行节点版本更新;
10.在确定初始主节点与待升级数据库集群中各个从节点,均满足预设的初始节点稳态条件时,基于版本更新数据集,对各个从节点进行版本升级,获得升级后的各个从节点;
11.当确定升级后的各个从节点各自的从节点特征,与初始主节点的初始特征,均满足预设的特征相似度条件时,从升级后的各个从节点中,筛选出满足预设的更新数据集获取时长条件的目标从节点;
12.基于目标从节点获得的版本更新数据集,对初始主节点进行版本升级。
13.第二方面,本技术实施例还提供了一种数据库集群升级装置,所述装置包括:
14.数据获取模块,用于从目标终端发送的数据库集群升级请求中,获取待升级数据库集群的版本更新数据集,并将版本更新数据集,保存至待升级数据库集群中的初始主节点;其中,待升级数据库集群按照主从模式进行节点版本更新;
15.第一升级模块,用于在确定初始主节点与待升级数据库集群中各个从节点,均满足预设的初始节点稳态条件时,基于版本更新数据集,对各个从节点进行版本升级,获得升级后的各个从节点;
16.节点筛选模块,用于当确定升级后的各个从节点各自的从节点特征,与初始主节点的初始特征,均满足预设的特征相似度条件时,从升级后的各个从节点中,筛选出满足预设的更新数据集获取时长条件的目标从节点;
17.第二升级模块,用于基于目标从节点获得的版本更新数据集,对初始主节点进行版本升级。
18.在一种可能的实施例中,在确定初始主节点与待升级数据库集群中各个从节点,均满足预设的初始节点稳态条件时,所述第一升级模块具体用于:
19.针对所述各个从节点,分别执行以下操作:
20.获取一个从节点的初始从节点状态信息,以及初始主节点的初始主节点状态信息;其中,初始主节点状态信息表征:一个从节点的初始工作状态,初始主节点状态信息表征:初始主节点的初始工作状态;
21.在基于初始从节点状态信息和初始主节点状态信息,确定一个从节点和初始主节点,均处于正常工作状态时,获取一个从节点的初始从节点数据集和初始主节点的初始主节点数据集;
22.当初始从节点数据集和初始主节点数据集的集合相似度,满足预设的初始数据集相似度条件时,确定初始主节点与一个从节点,满足初始节点稳态条件。
23.在一种可能的实施例中,在基于版本更新数据集,对各个从节点进行版本升级,获得升级后的各个从节点时,所述第一升级模块具体用于:
24.按照预设的数据分发时间周期,将初始主节点保存的版本更新数据集依次分发给各个从节点;
25.分别基于各个从节点各自获得的版本更新数据集,对各个从节点进行版本升级,获得升级后的各个从节点。
26.在一种可能的实施例中,在确定升级后的各个从节点各自的从节点特征,与初始主节点的初始特征,均满足预设的特征相似度条件时,所述节点筛选模块具体用于:
27.针对升级后的各个从节点,分别执行以下操作:
28.对升级后的一个从节点的节点状态信息和数据集进行解析,获得相应的从节点特征,以及对初始主节点的节点状态信息和版本更新数据集进行解析,获得相应的初始特征;
29.当从节点特征与初始特征之间的特征相似度,大于预设的特征相似度阈值时,确定从节点特征和初始特征,满足特征相似度条件。
30.在一种可能的实施例中,在从升级后的各个从节点中,筛选出满足预设的更新数据集获取时长条件的目标从节点时,所述节点筛选模块具体用于:
31.记录升级后的各个从节点,各自获得的版本更新数据集的获取时长;
32.基于获得的各个获取时长,分别确定升级后的各个从节点,各自的获取时长排列
顺序;
33.基于升级后的各个从节点,各自对应的获取时长排列顺序,从升级后的各个从节点中,筛选出满足更新数据集获取时长条件的目标从节点。
34.在一种可能的实施例中,在基于目标从节点获得的版本更新数据集,对初始主节点进行版本升级时,所述第二升级模块具体用于:
35.将目标从节点作为目标主节点,并基于目标主节点获得的版本更新数据集,对初始主节点进行版本升级。
36.在一种可能的实施例中,在基于目标从节点获得的版本更新数据集,对初始主节点进行版本升级之后,所述第二升级模块还用于:
37.获取升级后的初始主节点的当前主节点状态信息,以及升级后的各个从节点的当前从节点状态信息;
38.在基于当前主节点状态信息和各个当前从节点状态信息,确定升级后的初始主节点和升级后的各个从节点,均处于正常工作状态时,获取升级后的初始主节点的当前主节点数据集,以及升级后的各个从节点各自的当前从节点数据集;
39.在当前主节点数据集和各个当前从节点数据集,均满足预设的升级数据集相似度时,确定待升级数据集群升级成功。
40.第三方面,提出了一种电子设备,其包括处理器和存储器,其中,所述存储器存储有程序代码,当所述程序代码被所述处理器执行时,使得所述处理器执行上述第一方面所述的数据库集群升级方法的步骤。
41.第四方面,提出一种计算机可读存储介质,其包括程序代码,当所述程序代码在电子设备上运行时,所述程序代码用于使所述电子设备执行上述第一方面所述的数据库集群升级方法的步骤。
42.第五方面,提供一种计算机程序产品,所述计算机程序产品在被计算机调用时,使得所述计算机执行如第一方面所述的数据库集群升级方法步骤。
43.本技术有益效果如下:
44.在本技术实施例所提供的数据库集群升级方法中,从目标终端发送的数据库集群升级请求中,获取待升级数据库集群的版本更新数据集,并将版本更新数据集,保存至待升级数据库集群中的初始主节点,其中,待升级数据库集群按照主从模式进行节点版本更新;接着,在确定初始主节点与待升级数据库集群中各个从节点,均满足预设的初始节点稳态条件时,基于版本更新数据集,对各个从节点进行版本升级,获得升级后的各个从节点;进一步地,当确定升级后的各个从节点各自的从节点特征,与初始主节点的初始特征,均满足预设的特征相似度条件时,从升级后的各个从节点中,筛选出满足预设的更新数据集获取时长条件的目标从节点;最终,基于目标从节点获得的版本更新数据集,对初始主节点进行版本升级。
45.采用这种方式,避免了现有技术中,会因外部干扰或者版本升级数据的获取过程存在问题,导致获取到的各个版本升级数据之间存在差异,从而造成升级后的各个待升级集群节点存在差异,甚至存在部分待升级集群节点升级失败的技术弊端,确保了数据库集群的升级准确率。
46.此外,本技术的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书
中变得显而易见,或者,通过实施本技术而了解。本技术的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
附图说明
47.图1示例性示出了本技术实施例提供的一种数据库集群的结构示意图;
48.图2示例性示出了本技术实施例提供的一种数据库集群升级的系统架构示意图;
49.图3示例性示出了本技术实施例提供的一种数据库集群升级方法的方法流程示意图;
50.图4示例性示出了本技术实施例提供的一种确定节点满足初始节点稳态条件的方法流程示意图;
51.图5示例性示出了本技术实施例提供的一种从节点升级的具体应用场景示意图;
52.图6示例性示出了本技术实施例提供的一种确定从节点特征和初始特征,满足特征相似度条件的具体应用场景示意图;
53.图7示例性示出了本技术实施例提供的一种确定待升级数据集群升级成功的逻辑示意图;
54.图8示例性示出了本技术实施例提供的一种数据库集群升级装置的结构示意图;
55.图9示例性示出了本技术实施例提供的一种电子设备的结构示意图。
具体实施方式
56.为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合本技术实施例中的附图,对本技术的技术方案进行清楚、完整地描述,显然,所描述的实施例是本技术技术方案的一部分实施例,而不是全部的实施例。基于本技术文件中记载的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本技术技术方案保护的范围。
57.需要说明的是,在本技术的描述中“多个”理解为“至少两个”。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。a与b连接,可以表示:a与b直接连接和a与b通过c连接这两种情况。另外,在本技术的描述中,“第一”、“第二”等词汇,仅用于区分描述的目的,而不能理解为指示或暗示相对重要性,也不能理解为指示或暗示顺序。
58.此外,本技术技术方案中,对数据的采集、传播、使用等,均符合国家相关法律法规要求。
59.下面对本技术实施例的设计思想进行简要介绍:
60.随着信息时代的飞速发展以及企业数据量的剧增,数据库系统承载的压力和承当的“责任”也越来越大,为了保证线上数据库集群的安全性、稳定性和功能的完备性,需要定期对数据库集群进行版本升级,在升级过程中如何保障应用业务不受影响以及数据库集群各数据的一致性具有重要意义。
61.现有技术中,为了实时、高效地实现数据库集群的版本升级,通常基于对应原始数据库集群中,各个待升级集群节点分别设置的升级进程,以及数据库主从复制协议,分别获取各个待升级集群节点各自的版本升级数据;接着,通过各个升级进程,分别对获得的各个
版本升级数据进行解析,获得各个待升级集群节点各自的版本配置信息;最终,基于获得的各个版本配置信息,分别对各个待升级集群节点进行版本升级,从而获得相应的目标数据库集群。
62.可见,现有的数据库升级方案中,未进行各个待升级集群节点之间数据一致性校验,来防止数据库的数据丢失,或者,会因外部干扰或者版本升级数据的获取过程存在问题,导致获取到的各个版本升级数据之间存在差异,从而造成升级后的各个待升级集群节点存在差异,甚至存在部分待升级集群节点升级失败的问题,进而影响数据库集群的版本升级准确率。
63.有鉴于此,本技术实施例中,为了确保数据库集群的升级准确率,提出了一种数据库集群升级方法,具体包括:从目标终端发送的数据库集群升级请求中,获取待升级数据库集群的版本更新数据集,并将版本更新数据集,保存至待升级数据库集群中的初始主节点,其中,待升级数据库集群按照主从模式进行节点版本更新;接着,在确定初始主节点与待升级数据库集群中各个从节点,均满足预设的初始节点稳态条件时,基于版本更新数据集,对各个从节点进行版本升级,获得升级后的各个从节点;进一步地,当确定升级后的各个从节点各自的从节点特征,与初始主节点的初始特征,均满足预设的特征相似度条件时,从升级后的各个从节点中,筛选出满足预设的更新数据集获取时长条件的目标从节点;最终,基于目标从节点获得的版本更新数据集,对初始主节点进行版本升级。
64.特别地,以下结合说明书附图对本技术的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本技术,并不用于限定本技术,并且在不冲突的情况下,本技术实施例及实施例中的特征可以相互组合。
65.参阅图2所示,其为本技术实施例提供的一种数据库集群升级的系统架构示意图,该系统架构包括:一致性校验模块201、状态判断模块202、升级模块203以及主从切换模块204。其中,一致性校验模块201主要用来判断数据库集群的主从节点的数据一致性,确保数据在整个切换过程中无丢失;状态判断模块202主要用来判断数据库集群中,各节点状态是否正常;升级模块203主要用来升级数据库集群,确保数据库集群成功升级到指定版本;主从切换模块204通过在线主从切换,来确保在不停业的情况下,自动升级数据库集群中的初始主节点。
66.需要说明的是,在进行一致性校验时,可根据初始主节点和各个从节点各自的全局事务标识符(global transaction identifier,gtid),来确定初始主节点和各个从节点之间的数据是否一致。
67.下面结合上述的系统架构,以及参考附图来描述本技术示例性实施方式提供的数据库集群升级方法,需要注意的是,上述系统架构仅是为了便于理解本技术的精神和原理而示出,本技术的实施方式在此方面不受任何限制。
68.参阅图3所示,其为本技术实施例提供的一种数据库集群升级方法的方法实施流程图,以执行主体为数据库集群升级系统为例,该方法的具体实施流程如下:
69.s301:从目标终端发送的数据库集群升级请求中,获取待升级数据库集群的版本更新数据集,并将版本更新数据集,保存至待升级数据库集群中的初始主节点。
70.具体的,在执行步骤s301时,数据库集群升级系统接收目标终端发送的数据库集群升级请求,并对数据库集群升级请求进行解析,从而获得待升级数据集群的版本更新数
据集,进而将版本数据集保存至待升级数据库集群中的初始主节点;其中,待升级数据库集群按照主从模式进行节点版本更新。
71.s302:在确定初始主节点与待升级数据库集群中各个从节点,均满足预设的初始节点稳态条件时,基于版本更新数据集,对各个从节点进行版本升级,获得升级后的各个从节点。
72.具体的,在执行步骤s302时,数据库集群升级系统在将版本更新数据集,保存至待升级数据库集群中的初始主节点之后,参阅图4所示,针对各个从节点,分别执行以下操作:
73.s3021:获取一个从节点的初始从节点状态信息,以及初始主节点的初始主节点状态信息。
74.具体的,在执行步骤s3021时,数据库集群升级系统通过状态判断模块,获取上述一个从节点的初始从节点状态信息,以及初始主节点的初始主节点状态信息;其中,初始主节点状态信息表征:上述一个从节点的初始工作状态,初始主节点状态信息表征:上述初始主节点的初始工作状态。
75.s3022:在基于初始从节点状态信息和初始主节点状态信息,确定一个从节点和初始主节点,均处于正常工作状态时,获取一个从节点的初始从节点数据集和初始主节点的初始主节点数据集。
76.具体的,在执行步骤s3022时,数据库集群升级系统基于获得的初始从节点状态信息和初始主节点状态信息,并通过状态判断模块,确定上述一个从节点和初始主节点,均处于正常工作状态时,便可通过一致性校验模块,获取上述一个从节点的初始从节点数据集和初始主节点的初始主节点数据集。
77.可选的,若数据库集群升级系统通过状态判断模块,确定上述一个从节点和初始主节点,存在处于异常工作状态的情况,则提示待升级数据库集群不符合主从切换或主从更新模式,并退出数据库集群升级。
78.s3023:当初始从节点数据集和初始主节点数据集的集合相似度,满足预设的初始数据集相似度条件时,确定初始主节点与一个从节点,满足初始节点稳态条件。
79.具体的,在执行步骤s3023时,数据库集群升级系统通过状态判断模块,以及预设的初始数据集相似度条件,确定初始主节点与上述一个从节点,是否满足初始节点稳态条件。若初始从节点数据集和初始主节点数据集的集合相似度,满足预设的初始数据集相似度条件,则可确定初始主节点与上述一个从节点,满足初始节点稳态条件。
80.例如,假定预设的初始数据集相似条件为:相似度阈值αy=98%,若初始从节点数据集和初始主节点数据集的集合相似度α1=98.3%,则可知集合相似度α1=98.3%,大于相似度阈值αy=98%,进而可确定初始主节点与上述一个从节点,满足初始节点稳态条件。
81.可选的,若初始从节点数据集和初始主节点数据集的集合相似度,不满足预设的初始数据集相似度条件,则可确定初始主节点与上述一个从节点,不满足初始节点稳态条件。
82.例如,假定预设的初始数据集相似条件仍为:相似度阈值αy=98%,若初始从节点数据集和初始主节点数据集的集合相似度α2=85.2%,则可知集合相似度α2=85.2%,小于相似度阈值αy=98%,进而可确定初始主节点与上述一个从节点,不满足初始节点稳态条件。
83.进一步地,参阅图5所示,数据库集群升级系统在确定初始主节点(比如,mas.node1)与待升级数据库集群中各个从节点(比如,ser.node1、ser.node2和ser.node3),均满足预设的初始节点稳态条件时,便可按照预设的数据分发时间周期(比如,100ms),将初始主节点保存的版本更新数据集依次分发给各个从节点,从而通过升级模块,分别基于各个从节点各自获得的版本更新数据集,对各个从节点进行版本升级,进而获得升级后的各个从节点,且依次可记为:up.node1、up.node2和up.node3。
84.s303:当确定升级后的各个从节点各自的从节点特征,与初始主节点的初始特征,均满足预设的特征相似度条件时,从升级后的各个从节点中,筛选出满足预设的更新数据集获取时长条件的目标从节点。
85.具体的,在执行步骤s303时,数据库集群升级系统确定初始主节点与上述一个从节点,满足初始节点稳态条件之后,便可基于升级后的各个从节点各自的从节点特征和初始主节点的初始特征,以及预设的特征相似度条件,判断各个从节点特征和初始特征之间,是否均满足预设的特征相似度条件。
86.一种可能的实现方式中,参阅图6所示,数据库集群升级系统针对升级后的各个从节点,分别执行以下操作:对升级后的一个从节点的节点状态信息和数据集进行解析,获得相应的从节点特征,以及对初始主节点的节点状态信息和版本更新数据集进行解析,获得相应的初始特征;进一步地,当从节点特征与初始特征之间的特征相似度,大于预设的特征相似度阈值时,确定从节点特征和初始特征,满足特征相似度条件。
87.示例性的,假定预设的特征相似度阈值βy=95%,若从节点特征与初始特征之间的特征相似度β1=97.2%,则可知特征相似度β1=97.2%,大于特征相似度阈值βy=95%,进而可确定从节点特征和初始特征,满足相应的特征相似度条件。
88.可选的,当从节点特征与初始特征之间的特征相似度,不大于预设的特征相似度阈值时,确定从节点特征和初始特征,不满足特征相似度条件。
89.示例性的,假定预设的特征相似度阈值βy=95%,若从节点特征与初始特征之间的特征相似度β1=88.7%,则可知特征相似度β1=88.7%,小于特征相似度阈值βy=95%,进而可确定从节点特征和初始特征,不满足相应的特征相似度条件。
90.进一步地,若确定升级后的各个从节点各自的从节点特征,与初始主节点的初始特征,均满足预设的特征相似度条件,则可从升级后的各个从节点中,筛选出满足预设的更新数据集获取时长条件的目标从节点。
91.具体的,数据库集群升级系统在各个从节点从初始主节点,各自获取相应的版本更新数据集的过程中,便记录了各个从节点各自获得的版本更新数据集的获取时长;接着,在各个从节点基于各自的版本数据更新数据集进行版本升级后,便可基于各个版本更新数据集的获取时长,分别确定升级后的各个从节点,各自的获取时长排列顺序;最终,基于升级后的各个从节点,各自对应的获取时长排列顺序,从升级后的各个从节点中,筛选出满足更新数据集获取时长条件的目标从节点。
92.需要说明的是,版本更新数据集的获取时长表征:相应从节点同步初始主节点数据信息的能力,即若版本更新数据集的获取时长越短,则表明相应从节点同步初始主节点数据行的能力越强;反之,若版本更新数据集的获取时长越长,则表明相应从节点同步初始主节点数据行的能力越弱。
93.s304:基于目标从节点获得的版本更新数据集,对初始主节点进行版本升级。
94.具体的,在执行步骤s304时,数据库集群升级系统筛选出满足预设的更新数据集获取时长条件的目标从节点之后,便可将目标从节点作为目标主节点,并基于目标主节点获得的版本更新数据集,对初始主节点进行版本升级。
95.进一步地,数据库集群升级系统在对初始主节点进行版本升级之后,为了判断数据库集群的升级是否准确,需要检测升级后数据库集群中,各个节点状态是否正常,以及数据是否一致,参阅图7所示,获取升级后的初始主节点的当前主节点状态信息,以及升级后的各个从节点的当前从节点状态信息;接着,在基于当前主节点状态信息和各个当前从节点状态信息,确定升级后的初始主节点和升级后的各个从节点,均处于正常工作状态时,获取升级后的初始主节点的当前主节点数据集,以及升级后的各个从节点各自的当前从节点数据集;最终当上述当前主节点数据集和各个当前从节点数据集,均满足预设的升级数据集相似度时,确定待升级数据集群升级成功。
96.示例性的,以4个当前从节点数据集为例,假定预设的升级数据集相似度γy=93%,若当前主节点数据集和4个前从节点数据集之间的当前数据集相似度依次为:γ1=94.2%、γy=95.8%、γy=93.1%和γy=97.2%,则可知当前主节点数据集和各个当前从节点数据集,均满足预设的升级数据集相似度,进而可知待升级数据集群升级成功。
97.综上所述,在本技术实施例所提供的数据库集群升级方法中,从目标终端发送的数据库集群升级请求中,获取待升级数据库集群的版本更新数据集,并将版本更新数据集,保存至待升级数据库集群中的初始主节点,其中,待升级数据库集群按照主从模式进行节点版本更新;接着,在确定初始主节点与待升级数据库集群中各个从节点,均满足预设的初始节点稳态条件时,基于版本更新数据集,对各个从节点进行版本升级,获得升级后的各个从节点;进一步地,当确定升级后的各个从节点各自的从节点特征,与初始主节点的初始特征,均满足预设的特征相似度条件时,从升级后的各个从节点中,筛选出满足预设的更新数据集获取时长条件的目标从节点;最终,基于目标从节点获得的版本更新数据集,对初始主节点进行版本升级。
98.采用这种方式,避免了现有技术中,会因外部干扰或者版本升级数据的获取过程存在问题,导致获取到的各个版本升级数据之间存在差异,从而造成升级后的各个待升级集群节点存在差异,甚至存在部分待升级集群节点升级失败的技术弊端,确保了数据库集群的升级准确率。
99.进一步地,基于相同的技术构思,本技术实施例还提供了一种数据库集群升级装置,该数据库集群升级装置用以实现本技术实施例的上述的数据库集群升级方法流程。参阅图8所示,该数据库集群升级装置包括:数据获取模块801、第一升级模块802、节点筛选模块803以及第二升级模块804,其中:
100.数据获取模块801,用于从目标终端发送的数据库集群升级请求中,获取待升级数据库集群的版本更新数据集,并将版本更新数据集,保存至待升级数据库集群中的初始主节点;其中,待升级数据库集群按照主从模式进行节点版本更新;
101.第一升级模块802,用于在确定初始主节点与待升级数据库集群中各个从节点,均满足预设的初始节点稳态条件时,基于版本更新数据集,对各个从节点进行版本升级,获得升级后的各个从节点;
102.节点筛选模块803,用于当确定升级后的各个从节点各自的从节点特征,与初始主节点的初始特征,均满足预设的特征相似度条件时,从升级后的各个从节点中,筛选出满足预设的更新数据集获取时长条件的目标从节点;
103.第二升级模块804,用于基于目标从节点获得的版本更新数据集,对初始主节点进行版本升级。
104.在一种可能的实施例中,在确定初始主节点与待升级数据库集群中各个从节点,均满足预设的初始节点稳态条件时,所述第一升级模块802具体用于:
105.针对所述各个从节点,分别执行以下操作:
106.获取一个从节点的初始从节点状态信息,以及初始主节点的初始主节点状态信息;其中,初始主节点状态信息表征:一个从节点的初始工作状态,初始主节点状态信息表征:初始主节点的初始工作状态;
107.在基于初始从节点状态信息和初始主节点状态信息,确定一个从节点和初始主节点,均处于正常工作状态时,获取一个从节点的初始从节点数据集和初始主节点的初始主节点数据集;
108.当初始从节点数据集和初始主节点数据集的集合相似度,满足预设的初始数据集相似度条件时,确定初始主节点与一个从节点,满足初始节点稳态条件。
109.在一种可能的实施例中,在基于版本更新数据集,对各个从节点进行版本升级,获得升级后的各个从节点时,所述第一升级模块802具体用于:
110.按照预设的数据分发时间周期,将初始主节点保存的版本更新数据集依次分发给各个从节点;
111.分别基于各个从节点各自获得的版本更新数据集,对各个从节点进行版本升级,获得升级后的各个从节点。
112.在一种可能的实施例中,在确定升级后的各个从节点各自的从节点特征,与初始主节点的初始特征,均满足预设的特征相似度条件时,所述节点筛选模块803具体用于:
113.针对升级后的各个从节点,分别执行以下操作:
114.对升级后的一个从节点的节点状态信息和数据集进行解析,获得相应的从节点特征,以及对初始主节点的节点状态信息和版本更新数据集进行解析,获得相应的初始特征;
115.当从节点特征与初始特征之间的特征相似度,大于预设的特征相似度阈值时,确定从节点特征和初始特征,满足特征相似度条件。
116.在一种可能的实施例中,在从升级后的各个从节点中,筛选出满足预设的更新数据集获取时长条件的目标从节点时,所述节点筛选模块803具体用于:
117.记录升级后的各个从节点,各自获得的版本更新数据集的获取时长;
118.基于获得的各个获取时长,分别确定升级后的各个从节点,各自的获取时长排列顺序;
119.基于升级后的各个从节点,各自对应的获取时长排列顺序,从升级后的各个从节点中,筛选出满足更新数据集获取时长条件的目标从节点。
120.在一种可能的实施例中,在基于目标从节点获得的版本更新数据集,对初始主节点进行版本升级时,所述第二升级模块804具体用于:
121.将目标从节点作为目标主节点,并基于目标主节点获得的版本更新数据集,对初
始主节点进行版本升级。
122.在一种可能的实施例中,在基于目标从节点获得的版本更新数据集,对初始主节点进行版本升级之后,所述第二升级模块804还用于:
123.获取升级后的初始主节点的当前主节点状态信息,以及升级后的各个从节点的当前从节点状态信息;
124.在基于当前主节点状态信息和各个当前从节点状态信息,确定升级后的初始主节点和升级后的各个从节点,均处于正常工作状态时,获取升级后的初始主节点的当前主节点数据集,以及升级后的各个从节点各自的当前从节点数据集;
125.在当前主节点数据集和各个当前从节点数据集,均满足预设的升级数据集相似度时,确定待升级数据集群升级成功。
126.基于相同的技术构思,本技术实施例还提供了一种电子设备,该电子设备可实现本技术上述实施例提供的数据库集群升级方法流程。在一种实施例中,该电子设备可以是服务器,也可以是终端设备或其他电子设备。如图9所示,该电子设备可包括:
127.至少一个处理器901,以及与至少一个处理器901连接的存储器902,本技术实施例中不限定处理器901与存储器902之间的具体连接介质,图9中是以处理器901和存储器902之间通过总线900连接为例。总线900在图9中以粗线表示,其它部件之间的连接方式,仅是进行示意性说明,并不引以为限。总线900可以分为地址总线、数据总线、控制总线等,为便于表示,图9中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。或者,处理器901也可以称为控制器,对于名称不做限制。
128.在本技术实施例中,存储器902存储有可被至少一个处理器901执行的指令,至少一个处理器901通过执行存储器902存储的指令,可以执行前文论述的一种数据库集群升级方法。处理器901可以实现图8所示的装置中各个模块的功能。
129.其中,处理器901是该装置的控制中心,可以利用各种接口和线路连接整个该控制设备的各个部分,通过运行或执行存储在存储器902内的指令以及调用存储在存储器902内的数据,该装置的各种功能和处理数据,从而对该装置进行整体监控。
130.在一种可能的设计中,处理器901可包括一个或多个处理单元,处理器901可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器901中。在一些实施例中,处理器901和存储器902可以在同一芯片上实现,在一些实施例中,它们也可以在独立的芯片上分别实现。
131.处理器901可以是通用处理器,例如cpu、数字信号处理器、专用集成电路、现场可编程门阵列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件,可以实现或者执行本技术实施例中公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本技术实施例所公开的一种数据库集群升级方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
132.存储器902作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块。存储器902可以包括至少一种类型的存储介质,例如可以包括闪存、硬盘、多媒体卡、卡型存储器、随机访问存储器(random access memory,ram)、静态随机访问存储器(static random access memory,sram)、可编程只读存
储器(programmable read only memory,prom)、只读存储器(read only memory,rom)、带电可擦除可编程只读存储器(electrically erasable programmable read-only memory,eeprom)、磁性存储器、磁盘、光盘等等。存储器902是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。本技术实施例中的存储器902还可以是电路或者其它任意能够实现存储功能的装置,用于存储程序指令和/或数据。
133.通过对处理器901进行设计编程,可以将前述实施例中介绍的一种数据库集群升级方法所对应的代码固化到芯片内,从而使芯片在运行时能够执行图3所示的实施例的一种数据库集群升级方法的步骤。如何对处理器901进行设计编程为本领域技术人员所公知的技术,这里不再赘述。
134.基于同一发明构思,本技术实施例还提供一种存储介质,该存储介质存储有计算机指令,当该计算机指令在计算机上运行时,使得计算机执行前文论述的一种数据库集群升级方法。
135.在一些可能的实施方式中,本技术提供一种数据库集群升级方法的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当程序产品在装置上运行时,程序代码用于使该控制设备执行本说明书上述描述的根据本技术各种示例性实施方式的一种数据库集群升级方法中的步骤。
136.此外,尽管在附图中以特定顺序描述了本技术方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
137.本领域内的技术人员应明白,本技术的实施例可提供为方法、系统、或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
138.这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
139.显然,本领域的技术人员可以对本技术进行各种改动和变型而不脱离本技术的精神和范围。这样,倘若本技术的这些修改和变型属于本技术权利要求及其等同技术的范围之内,则本技术也意图包含这些改动和变型在内。
技术特征:1.一种数据库集群升级方法,其特征在于,包括:从目标终端发送的数据库集群升级请求中,获取待升级数据库集群的版本更新数据集,并将所述版本更新数据集,保存至所述待升级数据库集群中的初始主节点;其中,所述待升级数据库集群按照主从模式进行节点版本更新;在确定所述初始主节点与所述待升级数据库集群中各个从节点,均满足预设的初始节点稳态条件时,基于所述版本更新数据集,对所述各个从节点进行版本升级,获得升级后的各个从节点;当确定所述升级后的各个从节点各自的从节点特征,与所述初始主节点的初始特征,均满足预设的特征相似度条件时,从所述升级后的各个从节点中,筛选出满足预设的更新数据集获取时长条件的目标从节点;基于所述目标从节点获得的版本更新数据集,对所述初始主节点进行版本升级。2.如权利要求1所述的方法,其特征在于,所述确定所述初始主节点与所述待升级数据库集群中各个从节点,均满足预设的初始节点稳态条件,包括针对所述各个从节点,分别执行以下操作:获取一个从节点的初始从节点状态信息,以及所述初始主节点的初始主节点状态信息;其中,所述初始主节点状态信息表征:所述一个从节点的初始工作状态,所述初始主节点状态信息表征:所述初始主节点的初始工作状态;在基于所述初始从节点状态信息和所述初始主节点状态信息,确定所述一个从节点和所述初始主节点,均处于正常工作状态时,获取所述一个从节点的初始从节点数据集和所述初始主节点的初始主节点数据集;当所述初始从节点数据集和所述初始主节点数据集的集合相似度,满足预设的初始数据集相似度条件时,确定所述初始主节点与所述一个从节点,满足所述初始节点稳态条件。3.如权利要求1所述的方法,其特征在于,所述基于所述版本更新数据集,对所述各个从节点进行版本升级,获得升级后的各个从节点,包括:按照预设的数据分发时间周期,将所述初始主节点保存的所述版本更新数据集依次分发给所述各个从节点;分别基于所述各个从节点各自获得的版本更新数据集,对所述各个从节点进行版本升级,获得升级后的各个从节点。4.如权利要求1所述的方法,其特征在于,所述确定所述升级后的各个从节点各自的从节点特征,与所述初始主节点的初始特征,均满足预设的特征相似度条件,包括:针对所述升级后的各个从节点,分别执行以下操作:对升级后的一个从节点的节点状态信息和数据集进行解析,获得相应的从节点特征,以及对所述初始主节点的节点状态信息和所述版本更新数据集进行解析,获得相应的初始特征;当所述从节点特征与所述初始特征之间的特征相似度,大于预设的特征相似度阈值时,确定所述从节点特征和所述初始特征,满足所述特征相似度条件。5.如权利要求3所述的方法,其特征在于,所述从所述升级后的各个从节点中,筛选出满足预设的更新数据集获取时长条件的目标从节点,包括:获取所述升级后的各个从节点,各自获得的版本更新数据集的获取时长;
基于获得的各个获取时长,分别确定所述升级后的各个从节点,各自的获取时长排列顺序;基于所述升级后的各个从节点,各自对应的获取时长排列顺序,从所述升级后的各个从节点中,筛选出满足所述更新数据集获取时长条件的目标从节点。6.如权利要求1所述的方法,其特征在于,所述基于所述目标从节点获得的版本更新数据集,对所述初始主节点进行版本升级,包括:将所述目标从节点作为目标主节点,并基于所述目标主节点获得的版本更新数据集,对所述初始主节点进行版本升级。7.如权利要求1-6中任一项所述的方法,其特征在于,所述基于所述目标从节点获得的版本更新数据集,对所述初始主节点进行版本升级之后,还包括:获取升级后的初始主节点的当前主节点状态信息,以及所述升级后的各个从节点的当前从节点状态信息;在基于所述当前主节点状态信息和各个当前从节点状态信息,确定所述升级后的初始主节点和所述升级后的各个从节点,均处于正常工作状态时,获取所述升级后的初始主节点的当前主节点数据集,以及所述升级后的各个从节点各自的当前从节点数据集;在所述当前主节点数据集和各个当前从节点数据集,均满足预设的升级数据集相似度时,确定所述待升级数据集群升级成功。8.一种数据库集群升级装置,其特征在于,包括:数据获取模块,用于从目标终端发送的数据库集群升级请求中,获取待升级数据库集群的版本更新数据集,并将所述版本更新数据集,保存至所述待升级数据库集群中的初始主节点;其中,所述待升级数据库集群按照主从模式进行节点版本更新;第一升级模块,用于在确定所述初始主节点与所述待升级数据库集群中各个从节点,均满足预设的初始节点稳态条件时,基于所述版本更新数据集,对所述各个从节点进行版本升级,获得升级后的各个从节点;节点筛选模块,用于当确定所述升级后的各个从节点各自的从节点特征,与所述初始主节点的初始特征,均满足预设的特征相似度条件时,从所述升级后的各个从节点中,筛选出满足预设的更新数据集获取时长条件的目标从节点;第二升级模块,用于基于所述目标从节点获得的版本更新数据集,对所述初始主节点进行版本升级。9.一种电子设备,包括存储器,处理器及存储在存储器上并可在处理器运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1-7中任一项所述的方法。10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-7中任一所述方法的步骤。
技术总结本申请公开了一种数据库集群升级方法、装置、电子设备及存储介质,涉及数据库信息技术领域。本申请中,从数据库集群升级请求中,获取待升级数据库集群的版本更新数据集,并将其保存至待升级数据库集群中的初始主节点;接着,在确定初始主节点与各个从节点,均满足预设的初始节点稳态条件时,基于版本更新数据集,对各个从节点进行版本升级;进一步地,当确定升级后的各个从节点各自的从节点特征,与初始主节点的初始特征,均满足预设的特征相似度条件时,从升级后的各个从节点中,筛选出满足预设的更新数据集获取时长条件的目标从节点;最终,基于目标从节点获得的版本更新数据集,对初始主节点进行版本升级,以确保数据库集群的升级准确率。升级准确率。升级准确率。
技术研发人员:曾祥洲 赵梦月 尹志华
受保护的技术使用者:天翼云科技有限公司
技术研发日:2022.07.13
技术公布日:2022/11/1