[发明专利]数据库集群的扩容方法和装置、电子设备和存储介质在审
申请号: | 202110315060.2 | 申请日: | 2021-03-24 |
公开(公告)号: | CN113051250A | 公开(公告)日: | 2021-06-29 |
发明(设计)人: | 李江伟 | 申请(专利权)人: | 北京金山云网络技术有限公司 |
主分类号: | G06F16/21 | 分类号: | G06F16/21 |
代理公司: | 北京华夏泰和知识产权代理有限公司 11662 | 代理人: | 刘晓燕 |
地址: | 100085 北京市海淀*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 数据库 集群 扩容 方法 装置 电子设备 存储 介质 | ||
1.一种数据库集群的扩容方法,其特征在于,包括:
使用第一节点对目标数据库集群扩容,其中,所述目标数据库集群包含至少一个第二节点;
从多个子表中选取出待迁移到所述第一节点中的至少一个待迁移子表,其中,目标数据表被拆分为所述多个子表,所述多个子表中的一个子表存储在所述至少一个第二节点中的一个第二节点上,所述至少一个第二节点中的每个第二节点存储有所述多个子表中的至少一个子表;
将所述至少一个待迁移子表中的每个待迁移子表由原存储在的第二节点迁移到所述第一节点上。
2.根据权利要求1所述的方法,其特征在于,在使用所述第一节点为所述目标数据库扩容之前,所述方法还包括:
接收第一客户端发送的目标建表命令,其中,所述目标建表命令用于指示创建被拆分成目标数量的子表的所述目标数据表;
响应所述目标建表命令,为所述目标数据表创建所述多个子表,其中,所述多个子表中包含的子表的数量为所述目标数量,所述多个子表被分配到所述至少一个第二节点上。
3.根据权利要求2所述的方法,其特征在于,为所述目标数据表创建所述多个子表包括:
确定所述每个子表的表名以及所述每个子表所分配到的第二节点,其中,所述多个子表中的第一目标子表的表名与所述目标数据表的表名相同;
按照所述每个子表的表名,在所述每个子表所分配到的第二节点上创建所述每个子表。
4.根据权利要求2所述的方法,其特征在于,在接收所述第一客户端发送的所述目标建表命令之后,所述方法还包括:
提取所述目标建表命令中的目标参数信息,其中,所述目标参数信息用于指示按照目标拆分键、采用目标映射关系将所述目标数据表拆分为所述多个子表,所述目标映射关系为所述目标拆分键的值与所述多个子表之间的映射关系;
根据所述目标参数信息,生成与所述目标数据表对应的目标元信息,其中,所述目标元信息包含所述目标拆分键、所述目标映射关系的指示信息、以及第一分布信息,所述第一分布信息用于指示所述每个第二节点上所分配的子表。
5.根据权利要求4所述的方法,其特征在于,在使用所述第一节点对所述目标数据库扩容之后,所述方法还包括:
将所述目标元信息中的所述第一分布信息更新为第二分布信息,得到更新后的所述目标元信息,其中,所述第二分布信息用于指示所述第一节点和所述至少一个第二节点中的每个节点上所分配的子表。
6.根据权利要求1所述的方法,其特征在于,在使用所述第一节点对所述目标数据库扩容之前,所述方法还包括:
接收第二客户端发送的目标业务请求,其中,所述目标数据表按照目标拆分键、采用目标映射关系被拆分为所述多个子表,所述目标映射关系为目标拆分键的值与所述多个子表之间的映射关系,所述目标业务请求用于请求对目标业务数据执行目标处理操作,所述目标业务数据的所述目标拆分键的值为目标键值;
响应所述目标业务请求,根据所述目标键值和所述目标映射关系,确定与所述目标业务数据对应的第二目标子表,其中,所述第二目标子表位于所述至少一个第二节点中的目标节点上;
在所述目标节点的所述第二目标子表中对所述目标业务数据执行所述目标处理操作。
7.根据权利要求1至6中任一项所述的方法,其特征在于,从所述多个子表中选取出待迁移到所述第一节点中的所述至少一个待迁移子表包括:
获取所述至少一个第二节点中的每个第二节点的数据量,其中,所述每个第二节点的数据量为所述每个第二节点中所存储的子表的数据量;
根据所述每个第二节点的数据量、以及所述每个子表的数据量,从所述多个子表中选取出所述至少一个待迁移子表。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京金山云网络技术有限公司,未经北京金山云网络技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110315060.2/1.html,转载请声明来源钻瓜专利网。