分布式数据库的缩容方法、装置、设备和介质制造方法及图纸

技术编号:32850312 阅读:23 留言:0更新日期:2022-03-30 19:03
本发明专利技术公开了一种分布式数据库的缩容方法、装置、设备和介质。其中方法包括:从多个数据节点中确定待缩容数据节点,并确定待缩容数据节点上第一副本数据子节点待迁至的第一目标迁移节点,以及第一目标迁移节点上第二副本数据子节点待迁至的第二目标迁移节点;分别迁移第一副本数据子节点至第一目标迁移节点,和第二副本数据子节点至第二目标迁移节点;确定待缩容数据节点上第一主数据子节点待迁至的第三目标迁移节点;迁移第一主数据子节点至第三目标迁移节点,并将待缩容数据节点从分布式数据库中删除。本发明专利技术通过一种在线缩容方案,对分布式数据库进行缩容,使得分布式数据库在缩容过程中无需中断服务,保证能够正常提供服务。务。务。

【技术实现步骤摘要】
分布式数据库的缩容方法、装置、设备和介质


[0001]本专利技术实施例涉及计算机
,尤其涉及一种分布式数据库的缩容方法、装置、设备和介质。

技术介绍

[0002]分布式数据库(例如GreenPlum数据库),是在PostgreSQL的基础上采用大规模并行处理(Massively Parallel Processing,简称MPP)架构的高性能数据库,具有高可用、高扩展性和性价比高等优点。
[0003]在使用过程中,为了适应数据量的规模和计算处理能力的要求,通常需要对GreenPlum数据库进行适应性缩容处理。目前,大多数是基于备份恢复的方式实现缩容的目的。具体实现过程为:将GreenPlum数据库中每个数据节点(Segment)上存储的数据全部备份到其他存储设备(比如,硬盘或磁盘等)中,然后拆解GreenPlum数据库,并将不满足需求的Segment拆除,利用剩余的Segment重新构建新GreenPlum数据库。在新GreenPlum数据库运行正常后,将暂存于其他存储设备中的数据重新导入到新GreenPlum数据库中。在导入数据时,被拆除的至少一个Segment的数据会被均匀的导入到新GreenPlum数据库中的每个Segment中,以实现对GreenPlum数据库的缩容。
[0004]然而,上述缩容方式需要GreenPlum数据库中断服务,导致GreenPlum数据库处于不可用的状态。

技术实现思路

[0005]本专利技术实施例提供一种分布式数据库的缩容方法、装置、设备和介质,通过一种在线缩容方案,对分布式数据库进行缩容,使得分布式数据库在缩容过程中无需中断服务,保证能够正常提供服务。
[0006]第一方面,本专利技术实施例提供了一种分布式数据库的缩容方法,所述分布式数据库包括管理节点和多个数据节点,所述每个数据节点包括主数据子节点和副本数据子节点,其中所述主数据子节点和所述副本数据子节点存储不同的数据;所述方法由管理节点执行,所述方法包括:
[0007]从多个数据节点中确定待缩容数据节点,并确定所述待缩容数据节点上第一副本数据子节点待迁至的第一目标迁移节点,以及所述第一目标迁移节点上第二副本数据子节点待迁至的第二目标迁移节点;
[0008]分别迁移所述第一副本数据子节点至所述第一目标迁移节点,和所述第二副本数据子节点至所述第二目标迁移节点;
[0009]确定所述待缩容数据节点上第一主数据子节点待迁至的第三目标迁移节点;
[0010]迁移所述第一主数据子节点至所述第三目标迁移节点,并将所述待缩容数据节点从所述分布式数据库中删除。
[0011]第二方面,本专利技术实施例提供了一种分布式数据库的缩容装置,所述分布式数据
库包括管理节点和多个数据节点,所述每个数据节点包括主数据子节点和副本数据子节点,其中所述主数据子节点和所述副本数据子节点存储不同的数据;所述装置配置于管理节点,包括:
[0012]第一确定模块,用于从多个数据节点中确定待缩容数据节点,并确定所述待缩容数据节点上第一副本数据子节点待迁至的第一目标迁移节点,以及所述第一目标迁移节点上第二副本数据子节点待迁至的第二目标迁移节点;
[0013]第一控制模块,用于分别迁移所述第一副本数据子节点至所述第一目标迁移节点,和所述第二副本数据子节点至所述第二目标迁移节点;
[0014]第二确定模块,用于确定所述待缩容数据节点上第一主数据子节点待迁至的第三目标迁移节点;
[0015]第二控制模块,用于迁移所述第一主数据子节点至所述第三目标迁移节点,并将所述待缩容数据节点从所述分布式数据库中删除。
[0016]第三方面,本专利技术实施例还提供了一种电子设备,包括:
[0017]一个或多个处理器;
[0018]存储装置,用于存储一个或多个程序,
[0019]当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本专利技术实施例中任一所述的分布式数据库的缩容方法。
[0020]第四方面,本专利技术实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本专利技术实施例中任一所述的分布式数据库的缩容方法。
[0021]本专利技术实施例公开的技术方案,具有如下有益效果:
[0022]从多个数据节点中确定待缩容数据节点,并确定待缩容数据节点上第一副本数据子节点待迁至的第一目标迁移节点,以及第一目标迁移节点上第二副本数据子节点待迁至的第二目标迁移节点;分别迁移第一副本数据子节点至第一目标迁移节点,和第二副本数据子节点至第二目标迁移节点;确定待缩容数据节点上第一主数据子节点的第三目标迁移节点,迁移第一主数据子节点至第三目标迁移节点,并将待缩容数据节点从分布式数据库中删除。由此,通过一种在线缩容方案,对分布式数据库进行缩容,使得分布式数据库在缩容过程中无需中断服务,保证能够正常提供服务。
附图说明
[0023]图1是本专利技术实施例提供的一种分布式数据库的结构示意图;
[0024]图2是本专利技术实施例提供的一种分布式数据库的缩容方法的流程示意图;
[0025]图3是本专利技术实施例提供的另一种分布式数据库的缩容方法的流程示意图;
[0026]图4(a)是本专利技术实施例提供的一个具体确定待缩容数据节点上第一副本数据子节点的第一目标迁移节点的示意图;
[0027]图4(b)是本专利技术实施例提供的一个具体将第一副本数据子节点迁移至第一目标迁移节点,以及第二副本数据子节点迁移至第二目标迁移节点的示意图;
[0028]图5是本专利技术实施例提供的再一种分布式数据库的缩容方法的流程示意图;
[0029]图6(a)是本专利技术实施例提供的一种示例性并查集的示意图;
[0030]图6(b)是本专利技术实施例提供的一种构建分布式数据库的并查集的示意图;
[0031]图6(c)是本专利技术实施例提供的一种对分布式数据库进行缩容后的示意图;
[0032]图7是本专利技术实施例提供的一种分布式数据库的缩容装置的结构示意图;
[0033]图8是本专利技术实施例提供的一种电子设备的结构示意图。
具体实施方式
[0034]下面结合附图和实施例对本专利技术实施例作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本专利技术实施例,而非对本专利技术实施例的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本专利技术实施例相关的部分而非全部结构。
[0035]为了清楚说明本专利技术实施例,下面结合图1对分布式数据库(例如GreenPlum数据库)进行说明。如图1所示,分布式数据库包括一个管理节点(Master)和多个数据节点(Segment),管理节点与多个数据节点通过互联协议联通。其中,管理节点负责管理整个分布式数据库的运作;多个数据节点负责数据存储和运行计算。在使用过程中,为了避免数据节点发生故障导致整个数据库停止服务,通常会启用镜像,以为每个数据节点配备一个副本数据子节点(m本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种分布式数据库的缩容方法,其特征在于,所述分布式数据库包括管理节点和多个数据节点,所述每个数据节点包括主数据子节点和副本数据子节点,其中所述主数据子节点和所述副本数据子节点存储不同的数据;所述方法由管理节点执行,所述方法包括:从多个数据节点中确定待缩容数据节点,并确定所述待缩容数据节点上第一副本数据子节点待迁至的第一目标迁移节点,以及所述第一目标迁移节点上第二副本数据子节点待迁至的第二目标迁移节点;分别迁移所述第一副本数据子节点至所述第一目标迁移节点,和所述第二副本数据子节点至所述第二目标迁移节点;确定所述待缩容数据节点上第一主数据子节点待迁至的第三目标迁移节点;迁移所述第一主数据子节点至所述第三目标迁移节点,并将所述待缩容数据节点从所述分布式数据库中删除。2.根据权利要求1所述的方法,其特征在于,所述迁移所述第一主数据子节点至所述第三目标迁移节点之前,还包括:将迁移后的所述第二副本数据子节点切换为新的第一主数据子节点;若与所述第二副本数据子节点存储相同数据的所述第一主数据子节点迁移至所述第三目标迁移节点后,则将所述新的第一主数据子节点恢复为副本数据子节点。3.根据权利要求1所述的方法,其特征在于,所述确定所述待缩容数据节点上第一副本数据子节点待迁至的第一目标迁移节点,包括:根据至少两个数据节点上主数据子节点与副本数据子节点的映射关系,确定具有与所述第一主数据子节点存储相同数据的第二副本数据子节点的数据节点,并将所述数据节点,确定为第一目标迁移节点。4.根据权利要求1所述的方法,其特征在于,所述确定所述第一目标迁移节点上第二副本数据子节点待迁至的第二目标迁移节点,包括:根据负载量、网络距离和/或硬件状态数据,在除待缩容数据节点之外的其它数据节点中,确定所述第一目标迁移节点上第二副本数据子节点待迁至的第二目标迁移节点,其中第二目标迁移节点的数量大于等于1,且小于等于第二副本数据子节点的数量。5.根据权利要求4所述的方法,其特征在于,所述确定所述第一目标迁移节点上第二副本数据子节点待迁至的第二目标迁移节点之后,还包括:若所述第二目标迁移节点的数量等于所述第二副本数据子节点的数量,则将所述第二副本数据子节点分别迁至对应的第二目标迁移节点上;若所述第二目标迁移节点的数量小于所述第二副本数据子节点的数量,则从第二目标迁移节点中,选择负载量小,且硬件状态数据优的数据节点,并将该数据节点作为所述第一目标迁移节点上至少两个第二副本数据...

【专利技术属性】
技术研发人员:张鹏国吴燕波
申请(专利权)人:浙江宇视科技有限公司
类型:发明
国别省市:

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

1