[发明专利]一种基于雪花ID的可扩展分库分表方法在审
申请号: | 202210022527.9 | 申请日: | 2022-01-10 |
公开(公告)号: | CN114357083A | 公开(公告)日: | 2022-04-15 |
发明(设计)人: | 赵绪龙;王士义;许健康 | 申请(专利权)人: | 珍岛信息技术(上海)股份有限公司 |
主分类号: | G06F16/27 | 分类号: | G06F16/27;G06F16/22;G06F16/21 |
代理公司: | 合肥正则元起专利代理事务所(普通合伙) 34160 | 代理人: | 胡玉 |
地址: | 200000 上海市静安区*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 雪花 id 扩展 分库分表 方法 | ||
1.一种基于雪花ID的可扩展分库分表方法,其特征在于,所述方法应用于数据库,所述方法包括:
将目标数据的雪花身份标识号ID按照预设规则进行切片,得到所述目标数据的目标片索引;其中,雪花ID是根据数据的存储时间生成的,指向该数据的存储位置的全局唯一性ID;
根据所述目标片索引在片虚拟桶中确定所述目标数据的目标存储服务器编号;所述片虚拟桶保存有数据的片索引与数据的存储服务器编号之间的对应关系;
根据所述雪花ID在虚拟桶中确定所述目标数据的目标存储表编号;所述虚拟桶保存有数据的雪花ID与数据的存储表编号之间的对应关系;
根据所述目标存储服务器编号和所述目标存储表编号确定所述目标数据的存储位置。
2.根据权利要求1所述的一种基于雪花ID的可扩展分库分表方法,其特征在于,将目标数据的雪花ID按照预设规则进行切片,得到所述目标数据的目标片索引,包括:
令数据的雪花ID为a,片索引b,预设片大小为c,则根据预设规则b=(a+c-1)/c,得到所述目标数据的目标片索引。
3.根据权利要求2所述的一种基于雪花ID的可扩展分库分表方法,其特征在于,根据所述目标片索引在片虚拟桶中确定所述目标数据的目标存储服务器编号,包括:
对所述目标片索引取模1024,得到第一取模值;
根据所述第一取模值和各个片虚拟桶的预设取模值范围,确定所述第一取模值对应的片虚拟桶,作为目标片虚拟桶;
根据所述目标片虚拟桶确定所述目标数据的目标存储服务器编号。
4.根据权利要求3所述的一种基于雪花ID的可扩展分库分表方法,其特征在于,在根据所述目标片索引在片虚拟桶中确定所述目标数据的目标存储服务器编号之前,所述方法还包括:
当所述数据库增加新的存储服务器时,生成该新的存储服务器对应的片虚拟桶,作为新增片虚拟桶;
调整所述数据库当前的所有片虚拟桶的预设取模值范围;
将所述新增片虚拟桶的预设取模值范围内对应的数据,迁移到该新的存储服务器中。
5.根据权利要求4所述的一种基于雪花ID的可扩展分库分表方法,其特征在于,根据所述雪花ID在虚拟桶中确定所述目标数据的目标存储表编号,包括:
对所述雪花ID取模9999,得到第二取模值;
对所述第二取模值取模1024,得到第三取模值;
根据所述第三取模值和各个虚拟桶的预设取模值范围,确定所述第三取模值对应的虚拟桶,作为目标虚拟桶;
根据所述目标虚拟桶确定所述目标数据的目标存储表编号。
6.根据权利要求5所述的一种基于雪花ID的可扩展分库分表方法,其特征在于,在根据所述雪花ID在虚拟桶中确定所述目标数据的目标存储表编号之前,所述方法还包括:
当所述数据库的任一存储服务器添加新的存储表时,生成该新的存储表对应的虚拟桶,作为新增虚拟桶;
调整该存储服务器当前的所有虚拟桶的预设取模值范围;
将所述新增虚拟桶的预设取模值范围内对应的数据,迁移到该新的存储表中。
7.根据权利要求1所述的一种基于雪花ID的可扩展分库分表方法,其特征在于,根据所述目标存储服务器编号和所述目标存储表编号确定所述目标数据的存储位置,包括:
查询预设规则表;所述预设规则表保存有数据迁移前的存储服务器编号与数据迁移后的存储服务器编号之间的对应关系,以及,数据迁移前的存储表编号与数据迁移后的存储表编号之间的对应关系;
若所述预设规则表中,存储有所述目标存储服务器编号和所述目标存储表编号,则,根据所述目标存储服务器编号和所述目标存储表编号对应的存储服务器编号和存储表编号确定所述目标数据的存储位置;
若所述预设规则表中,未存储所述目标存储服务器编号和所述目标存储表编号,则,根据所述目标存储服务器编号和所述目标存储表编号确定所述目标数据的存储位置。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于珍岛信息技术(上海)股份有限公司,未经珍岛信息技术(上海)股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210022527.9/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种拖运车的电控装置及拖运车
- 下一篇:大断面水工隧洞复合型偏压洞段施工方法