数据库节点升级方法、装置和计算机设备制造方法及图纸

技术编号:38709516 阅读:9 留言:0更新日期:2023-09-08 14:50
本申请涉及一种数据库节点升级方法、装置、计算机设备、存储介质和计算机程序产品。该方法包括:确定数据库集群中存储有对所存储数据进行切片得到的数据分片的副本的待升级节点;当待升级节点中存储的数据分片的副本为向从副本进行数据同步的主副本,从数据库集群中确定节点版本支持向关联节点同步切换节点中所存储的数据分片的副本的切换节点;关联节点是数据库集群中存储有数据分片的副本的数据库节点;在将数据分片的主副本由待升级节点切换到切换节点时,对待升级节点进行节点版本升级;升级后的节点中存储的数据分片的副本,是由切换节点基于所存储的数据分片的主副本针对进行数据同步的。采用本方法能够提升数据库集群的可靠性。集群的可靠性。集群的可靠性。

【技术实现步骤摘要】
数据库节点升级方法、装置和计算机设备


[0001]本申请涉及计算机
,特别是涉及一种数据库节点升级方法、装置、计算机设备、存储介质和计算机程序产品。

技术介绍

[0002]随着计算机技术的发展,各种类型数据的数据量不断增加,分布式数据库技术也得到了快速的发展。分布式数据库技术可以利用高速计算机网络,将物理上分散的多个节点连接起来组成一个逻辑上统一的数据库集群,以获取更大的存储容量和更高的并发访问量。
[0003]目前,为了满足数据业务需求,需要对数据库集群中的数据库节点进行升级。在针对各数据库节点进行升级时,数据库节点的数据复制通讯协议、文件存储格式等也会随之升级,可能会存在升级过程中同时存在多种不同的数据复制通讯协议的情况,而各个数据库节点中存储有不同的数据副本,很容易出现丢失数据副本的问题,降低了数据库集群的可靠性。

技术实现思路

[0004]基于此,有必要针对上述技术问题,提供一种能够提高数据库集群可靠性的数据库节点升级方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。
[0005]第一方面,本申请提供了一种数据库节点升级方法。所述方法包括:确定数据库集群中的待升级节点;待升级节点中存储有数据分片的副本;数据分片,是数据库集群所存储数据经过切片得到的;当待升级节点中存储的数据分片的副本属于向从副本进行数据同步的主副本,从数据库集群中确定切换节点;切换节点的节点版本支持向关联节点同步切换节点中所存储的数据分片的副本;关联节点,是数据库集群中存储有数据分片的副本的数据库节点;在将数据分片的主副本由待升级节点切换到切换节点的情况下,针对待升级节点进行节点版本升级,获得升级后的节点;其中,升级后的节点中存储的数据分片的副本,是由切换节点基于所存储的数据分片的主副本针对进行数据同步的。
[0006]第二方面,本申请还提供了一种数据库节点升级装置。所述装置包括:待升级节点确定模块,用于确定数据库集群中的待升级节点;待升级节点中存储有数据分片的副本;数据分片,是数据库集群所存储数据经过切片得到的;切换节点确定模块,用于当待升级节点中存储的数据分片的副本属于向从副本进行数据同步的主副本,从数据库集群中确定切换节点;切换节点的节点版本支持向关联节点同步切换节点中所存储的数据分片的副本;关联节点,是数据库集群中存储有数据分片的副本的数据库节点;版本升级模块,用于在将数据分片的主副本由待升级节点切换到切换节点的情况
下,针对待升级节点进行节点版本升级,获得升级后的节点;其中,升级后的节点中存储的数据分片的副本,是由切换节点基于所存储的数据分片的主副本针对进行数据同步的。
[0007]在一个实施例中,切换节点确定模块,还用于确定待升级节点中存储的数据分片的副本所属副本类型;当副本类型表示为向从副本进行数据同步的主副本,获取数据库集群中各数据库节点各自的节点信息;基于各节点信息,从数据库集群的各数据库节点中确定切换节点。
[0008]在一个实施例中,节点信息包括节点存储信息和节点版本信息;切换节点确定模块,还用于基于数据分片的分片信息和各数据库节点各自的节点存储信息,从各数据库节点中确定出关联节点;根据关联节点的节点版本信息确定关联节点的节点版本;根据节点版本,从关联节点中确定切换节点。
[0009]在一个实施例中,切换节点确定模块,还用于根据节点版本,将关联节点中的第一关联节点确定为切换节点;第一关联节点的节点版本支持增量数据同步协议,且关联节点中除第一关联节点外的第二关联节点兼容增量数据同步协议;数据库节点升级装置还包括数据增量同步模块;数据增量同步模块,用于按照切换节点的节点版本所支持的增量数据同步协议,将切换节点存储的数据分片的主副本的增量数据,向升级后的节点中存储的数据分片的副本进行增量数据同步。
[0010]在一个实施例中,切换节点确定模块,还用于根据节点版本,从关联节点中确定第一关联节点;第一关联节点的节点版本支持增量数据同步协议,且关联节点中除第一关联节点外的第二关联节点兼容增量数据同步协议;当第一关联节点不满足节点切换条件,从第二关联节点中确定切换节点。数据增量同步模块,还用于按照切换节点的节点版本所兼容的增量数据同步协议,将切换节点存储的数据分片的主副本的增量数据,向升级后的节点中存储的数据分片的副本进行增量数据同步。
[0011]在一个实施例中,版本升级模块,还用于将待升级节点存储的数据分片的副本切换为从副本,并将切换节点存储的数据分片的副本切换为主副本;针对待升级节点的数据格式以及支持的数据同步协议进行版本升级,获得升级后的节点;其中,升级后的节点存储的数据分片的副本更新为新版本数据格式,且升级后的节点支持新版本的数据同步协议进行数据同步。
[0012]在一个实施例中,待升级节点确定模块,还用于确定数据库集群中各数据库节点各自的存储信息;按照针对数据库集群的节点升级策略和存储信息,确定针对数据库集群的节点升级顺序;根据节点升级顺序从各数据库节点中确定待升级节点。
[0013]在一个实施例中,数据库节点升级装置还包括格式转换模块;格式转换模块,用于从切换节点获取数据分片的主副本的增量数据;增量数据的数据格式与关联节点可采用的增量数据同步协议相匹配;将增量数据转换成升级后的节点支持的新版本数据格式;将新版本数据格式的增量数据同步到升级后的节点所存储的数据分片的副本中。
[0014]在一个实施例中,数据库节点升级装置还包括回滚模块;回滚模块,用于确定数据库集群中经过至少一次节点版本升级后的待回滚节点;当待回滚节点中存储的数据分片的副本属于由目标主副本进行数据同步的从副本,针对待回滚节点进行节点版本降级,获得回滚后的节点;从数据库集群中确定目标主副本所在的目标节点;当目标节点与回滚后的节点属于相同的节点版本,将目标节点中存储的数据分片的目标主副本,同步到回滚后的
节点中。
[0015]在一个实施例中,回滚模块,还用于当目标节点的节点版本高于回滚后的节点所属的节点版本,从数据库集群中确定存量数据恢复节点;存量数据恢复节点中存储有目标主副本关联的从副本,且存量数据恢复节点与回滚后的节点属于相同的节点版本;将存量数据恢复节点中存储的数据分片的从副本,恢复到回滚后的节点中;按照回滚后的节点所属的节点版本支持的增量数据同步协议,将目标节点中存储的目标主副本的增量数据,同步到回滚后的节点中。
[0016]在一个实施例中,回滚模块,还用于当待回滚节点所存储数据分片的副本属于目标主副本,从数据库集群中确定中间节点;中间节点存储有目标主副本关联的从副本;将目标主副本由待回滚节点切换到中间节点,并执行当待回滚节点中存储的数据分片的副本属于由目标主副本进行数据同步的从副本,针对待回滚节点进行节点版本降级,获得回滚后的节点的步骤。
[0017]在一个实施例中,回滚模块,还用于获取针对数据库集群的节点升级策略以及数据库集群中的已升级节点;已升级节点经过至少一次节点版本升级;按照节点升级策略和已升级节点确定节点回滚顺序;根本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据库节点升级方法,其特征在于,所述方法包括:确定数据库集群中的待升级节点;所述待升级节点中存储有数据分片的副本;所述数据分片,是所述数据库集群所存储数据经过切片得到的;当所述待升级节点中存储的所述数据分片的副本属于向从副本进行数据同步的主副本,从所述数据库集群中确定切换节点;所述切换节点的节点版本支持向关联节点同步所述切换节点中所存储的所述数据分片的副本;所述关联节点,是所述数据库集群中存储有所述数据分片的副本的数据库节点;在将所述数据分片的主副本由所述待升级节点切换到所述切换节点的情况下,针对所述待升级节点进行节点版本升级,获得升级后的节点;其中,所述升级后的节点中存储的所述数据分片的副本,是由所述切换节点基于所存储的所述数据分片的主副本针对进行数据同步的。2.根据权利要求1所述的方法,其特征在于,所述当所述待升级节点中存储的所述数据分片的副本属于向从副本进行数据同步的主副本,从所述数据库集群中确定切换节点,包括:确定所述待升级节点中存储的所述数据分片的副本所属副本类型;当所述副本类型表示为向从副本进行数据同步的主副本,获取所述数据库集群中各数据库节点各自的节点信息;基于各所述节点信息,从所述数据库集群的各所述数据库节点中确定切换节点。3.根据权利要求2所述的方法,其特征在于,所述节点信息包括节点存储信息和节点版本信息;所述基于各所述节点信息,从所述数据库集群的各所述数据库节点中确定切换节点,包括:基于所述数据分片的分片信息和各所述数据库节点各自的节点存储信息,从各所述数据库节点中确定出关联节点;根据所述关联节点的节点版本信息确定所述关联节点的节点版本;根据所述节点版本,从所述关联节点中确定切换节点。4.根据权利要求3所述的方法,其特征在于,所述根据所述节点版本,从所述关联节点中确定切换节点,包括:根据所述节点版本,将所述关联节点中的第一关联节点确定为切换节点;所述第一关联节点的节点版本支持增量数据同步协议,且所述关联节点中除所述第一关联节点外的第二关联节点兼容所述增量数据同步协议;所述方法还包括:按照所述切换节点的节点版本所支持的所述增量数据同步协议,将所述切换节点存储的所述数据分片的主副本的增量数据,向所述升级后的节点中存储的所述数据分片的副本进行增量数据同步。5.根据权利要求3所述的方法,其特征在于,所述根据所述节点版本,从所述关联节点中确定切换节点,包括:根据所述节点版本,从所述关联节点中确定第一关联节点;所述第一关联节点的节点版本支持增量数据同步协议,且所述关联节点中除所述第一关联节点外的第二关联节点兼容所述增量数据同步协议;
当所述第一关联节点不满足节点切换条件,从所述第二关联节点中确定切换节点;所述方法还包括:按照所述切换节点的节点版本所兼容的所述增量数据同步协议,将所述切换节点存储的所述数据分片的主副本的增量数据,向所述升级后的节点中存储的所述数据分片的副本进行增量数据同步。6.根据权利要求1所述的方法,其特征在于,所述在将所述数据分片的主副本由所述待升级节点切换到所述切换节点的情况下,针对所述待升级节点进行节点版本升级,获得升级后的节点,包括:将所述待升级节点存储的所述数据分片的副本切换为从副本,并将所述切换节点存储的所述数据分片的副本切换为主副本;针对所述待升级节点的数据格式以及支持的数据同步协议进行版本升级,获得升级后的节点;其中,所述升级后的节点存储的所述数据分片的副本更新为新版本数据格式,且所述升级后的节点支持新版本的数据同步协议进行数据同步。7.根据权利要求1所述的方法,其特征在于,所述确定数据库集群中的待升级节点,包括:确定数据库集群中各数据库节点各自的存储信息;按照针对所述数据库集群的节点升级策略和所述存储信息,确定针对所述数据库集群的节点升级顺序;根据所述节点升级顺序从各所述数据库节点中确定待升级节点。8.根据权利要求1所述的方法,其特征在于,所述方法还包括:从所述...

【专利技术属性】
技术研发人员:顾明
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:

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

1