[发明专利]一种数据表分片方法、装置、设备及介质在审
申请号: | 202111504070.7 | 申请日: | 2021-12-10 |
公开(公告)号: | CN114185891A | 公开(公告)日: | 2022-03-15 |
发明(设计)人: | 张琳 | 申请(专利权)人: | 建信金融科技有限责任公司 |
主分类号: | G06F16/22 | 分类号: | G06F16/22;G06F16/21 |
代理公司: | 北京同达信恒知识产权代理有限公司 11291 | 代理人: | 黄丽 |
地址: | 200120 上海市浦东新区(上*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据表 分片 方法 装置 设备 介质 | ||
本申请涉及数据库技术领域,提供一种数据表分片方法、装置、设备及介质,用于在将数据表从集中式数据库迁移至分布式数据库时,提高数据表分片的效率。该方法包括:确定集中式数据库中需要迁移的目标数据表的数据量和常用字段占比,目标数据表包括多个字段;若数据量大于第一预设数据量,且常用字段占比小于第一预设占比,则对目标数据表采用垂直分片,垂直分片表示将目标数据表拆分的多个数据子表存放在分布式数据库的一个节点;若数据量大于第一预设数据量,且常用字段占比大于第二预设占比,则对目标数据表采用水平分片,水平分片表示将目标数据表拆分的多个数据子表存放在分布式数据库的不同节点。
技术领域
本申请涉及数据库技术领域,具体涉及一种数据表分片方法、装置、设备及介质。
背景技术
目前大部分商业银行系统还在使用传统的集中式数据库,然而集中式数据库扩展性低,越来越不能满足大型商业银行系统的需要,因此,大型商业银行系统迫切需要使用分布式数据库来代替集中式数据库,也就需要将集中式数据库中的数据表迁移至分布式数据库中。
由于分布式数据库在事务处理、跨节点多表连接(JOIN)等方面还存在一定的性能缺陷,所以需要充分考虑分布式数据库的优缺点,设计出更适用于分布式数据库的模型,而分片环节是分布式数据库模型设计中最重要的环节之一。
目前,主要是数据库管理员在分片环节中,凭借经验为每个数据表选择具体的分片方式,将分片后的多个数据子表再存放在分布式数据库中,这种人工进行数据表分片的效率较低。
发明内容
本申请实施例提供一种数据表分片方法、装置、设备及介质,用于在将数据表从集中式数据库迁移至分布式数据库时,提高数据表分片的效率。
第一方面,本申请提供一种数据表分片方法,所述方法包括:
确定集中式数据库中需要迁移的目标数据表的数据量和常用字段占比,其中,所述目标数据表包括多个字段,所述常用字段占比表示常用字段的数量与所述多个字段的数量的比值;
若所述数据量大于第一预设数据量,且所述常用字段占比小于第一预设占比,则对所述目标数据表采用垂直分片,其中,所述垂直分片表示将所述目标数据表拆分的多个数据子表存放在分布式数据库的一个节点;
若所述数据量大于所述第一预设数据量,且所述常用字段占比大于所述第二预设占比,则对所述目标数据表采用水平分片,其中,所述第二预设占比大于或等于所述第一预设占比,所述水平分片表示将所述目标数据表拆分的多个数据子表存放在所述分布式数据库的不同节点。
在一种可能的实施例中,所述方法还包括:
若所述数据量小于第二预设数据量,则确定所述目标数据表的表访问次数,其中,所述第二预设数据量小于所述第一预设数据量;
若所述表访问次数大于预设次数,则复制所述目标数据表,获得多个复制表;
将所述多个复制表存放在所述分布式数据库的各个节点。
在一种可能的实施例中,所述方法还包括:
若所述数据量大于所述第二预设数据量且小于所述第一预设数据量,则确定所述目标数据表的表访问次数;
若所述表访问次数大于预设次数,则对所述目标数据表采用所述垂直分片和所述水平分片。
在一种可能的实施例中,对所述目标数据表采用水平分片,包括:
基于每个字段的关联信息,从所述多个字段中确定分片字段,其中,所述每个字段的关联信息包括字段关联表的数据量、字段访问次数、字段区分度、字段是否为分区键;
根据所述分片字段的不同值,将所述目标数据表拆分为多个数据子表,将所述多个数据子表存放在所述分布式数据库的不同节点。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于建信金融科技有限责任公司,未经建信金融科技有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111504070.7/2.html,转载请声明来源钻瓜专利网。