数据库扩容方法、装置、电子设备及存储介质制造方法及图纸

技术编号:37507152 阅读:16 留言:0更新日期:2023-05-07 09:44
本申请涉及数据库技术领域,公开了一种数据库扩容方法、装置、电子设备及存储介质,所述方法包括:响应于针对数据库集群的扩容请求,为所述数据库集群创建新增数据节点,将所述数据库集群中原数据节点的数据迁移到所述新增数据节点;确定所述新增数据节点的数据量与所述原数据节点的数据量相同,锁定所述数据库集群,并对所述数据库集群进行路由切换操作;解锁所述数据库集群,并删除所述原数据节点与所述新增数据节点中的冗余数据。只在路由切换操作时停止对数据库集群的访问,有效缩短数据库集群扩容对应用系统的影响时间,最大程度保证应用系统运行的连续性。应用系统运行的连续性。应用系统运行的连续性。

【技术实现步骤摘要】
数据库扩容方法、装置、电子设备及存储介质


[0001]本申请涉及数据库
,具体而言,本申请涉及一种数据库扩容方法、装置、电子设备及存储介质。

技术介绍

[0002]分布式数据库集群安装完成后,其数据存储容量是预先规划并确定的。随着时间的推移以及业务量的增加,分布式数据库集群中的可用存储空间不断减少,面临数据节点扩充的需求。
[0003]分布式数据库集群一般采用散列函数(hash)将数据分布到各数据节点,通过增加数据节点,扩充分布式数据库集群数据容量,需要对已有数据的重新分布,将原有数据节点中的部分数据迁移到新增的数据节点。在数据迁移过程中,为保证数据的完整性和一致性,需要暂停分布式数据库集群对迁移中数据表的访问,分布式数据库扩容时表中数据量巨大,数据迁移的时间较长,从而影响应用系统访问的连续性。

技术实现思路

[0004]本申请实施例提供了一种数据库扩容方法,以解决现有技术中,数据迁移的时间较长,从而影响应用系统访问的连续性的问题。
[0005]相应的,本申请实施例还提供了一种数据库扩容装置、一种电子设备以及一种存储介质,用以保证上述方法的实现及应用。
[0006]为了解决上述问题,本申请实施例公开了一种数据库扩容方法,所述方法包括:
[0007]响应于针对数据库集群的扩容请求,为所述数据库集群创建新增数据节点,将所述数据库集群中原数据节点的数据迁移到所述新增数据节点;
[0008]确定所述新增数据节点的数据量与所述原数据节点的数据量相同,锁定所述数据库集群,并对所述数据库集群进行路由切换操作;
[0009]解锁所述数据库集群,并删除所述原数据节点与所述新增数据节点中的冗余数据。
[0010]本申请实施例还公开了一种数据库扩容装置,所述装置包括:
[0011]数据复制模块,用于响应于针对数据库集群的扩容请求,为所述数据库集群创建新增数据节点,将所述数据库集群中原数据节点的数据迁移到所述新增数据节点;
[0012]路由切换模块,用于确定所述新增数据节点的数据量与所述原数据节点的数据量相同,锁定所述数据库集群,并对所述数据库集群进行路由切换操作;
[0013]数据清除模块,用于解锁所述数据库集群,并删除所述原数据节点与所述新增数据节点中的冗余数据。
[0014]本申请实施例还公开了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时实现本申请实施例中一个或多个所述的方法。
[0015]本申请实施例还公开了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现如本申请实施例中一个或多个所述的方法。
[0016]本申请实施例提供的技术方案带来的有益效果是:
[0017]本申请实施例中,响应于针对数据库集群的扩容请求,为所述数据库集群创建新增数据节点,将所述数据库集群中原数据节点的数据迁移到所述新增数据节点;确定所述新增数据节点的数据量与所述原数据节点的数据量相同,锁定所述数据库集群,并对所述数据库集群进行路由切换操作;解锁所述数据库集群,并删除所述原数据节点与所述新增数据节点中的冗余数据。只在路由切换操作时停止对数据库集群的访问,有效缩短数据库集群扩容对应用系统的影响时间,最大程度保证应用系统运行的连续性。
[0018]本申请实施例附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本申请的实践了解到。
附图说明
[0019]本申请上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
[0020]图1为本申请实施例提供的数据库扩容方法的流程图;
[0021]图2为本申请实施例提供的数据库集群在线扩容方法的应用示意图;
[0022]图3为本申请实施例提供的数据可见性判断方法流程图;
[0023]图4为本申请实施例提供的现有技术实现部分节点扩容的示意图;
[0024]图5为本申请实施例提供的实现部分节点扩容的示意图;
[0025]图6为本申请实施例提供的一种数据库扩容装置的结构示意图;
[0026]图7为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
[0027]下面详细描述本申请的实施例,实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本申请,而不能解释为对本申请的限制。
[0028]本
技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本申请的说明书中使用的措辞“包括”是指存在特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组合。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
[0029]本领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本专利技术所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解
释。
[0030]本申请实施例所提供的方案可以由任一电子设备执行,如可以是终端设备,也可以是服务器,其中,服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云计算服务的云服务器。终端可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表等,但并不局限于此。终端以及服务器可以通过有线或无线通信方式进行直接或间接地连接,本申请在此不做限制。对于现有技术中所存在的技术问题,本申请提供的数据库扩容方法、装置、电子设备及存储介质,旨在解决现有技术的技术问题中的至少一项。
[0031]下面以具体实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本申请的实施例进行描述。
[0032]本申请实施例提供了一种可能的实现方式,如图1所示,提供了一种数据库扩容方法的流程图,该方案可以由任一电子设备执行,可选地,可以在服务器端或终端设备执行,为描述方便,下面以服务器作为执行主体对本申请实施例提供的方法进行说明。
[0033]如图1中所示,该方法可以包括以下步骤:
[0034]步骤101,响应于针对数据本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据库扩容方法,其特征在于,所述方法包括:响应于针对数据库集群的扩容请求,为所述数据库集群创建新增数据节点,将所述数据库集群中原数据节点的数据迁移到所述新增数据节点;确定所述新增数据节点的数据量与所述原数据节点的数据量相同,锁定所述数据库集群,并对所述数据库集群进行路由切换操作;解锁所述数据库集群,并删除所述原数据节点与所述新增数据节点中的冗余数据。2.根据权利要求1所述的数据库扩容方法,其特征在于,所述对所述数据库集群进行路由切换操作,包括:将所述新增数据节点添加到所述数据库集群。3.根据权利要求2所述的数据库扩容方法,其特征在于,所述将所述新增数据节点添加到所述数据库集群之前,还包括:将预设的冗余数据过滤方式关联到请求数据表;其中,所述请求数据表包括根据数据访问请求获取的所述原数据节点或所述新增数据节点的数据表。4.根据权利要求3所述的数据库扩容方法,其特征在于,所述删除所述原数据节点与所述新增数据节点中的冗余数据,包括:遍历所述原数据节点和所述新增数据节点中的数据;根据所述冗余数据过滤方式判断所述数据无效,删除所述数据。5.根据权利要求4所述的数据库扩容方法,其特征在于,所述删除所述数据,包括:通过delete方式或vacuum方式删除所述数据。...

【专利技术属性】
技术研发人员:许兴旺洪建辉余秀明马珊珊顾颀梁博张小波
申请(专利权)人:湖南亚信安慧科技有限公司
类型:发明
国别省市:

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

1