[发明专利]一种数据库的分库分表扩容方法在审
申请号: | 201810194709.8 | 申请日: | 2018-03-09 |
公开(公告)号: | CN108399258A | 公开(公告)日: | 2018-08-14 |
发明(设计)人: | 张云鹏;韩凯 | 申请(专利权)人: | 深圳市富途网络科技有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 518000 广东省深圳市南山区*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 数据库 存储位置 扩容 数据库表 迁移 分表 数据存储位置 读取 快速计算 配置文件 停止服务 唯一标识 验证 分裂 | ||
本发明公开了一种数据库的分库分表扩容方法,其包括有如下步骤:步骤S1,设定每个数据库表的唯一标识值为key;步骤S2,设定数据库的数量为m个,设定数据库表的数量为n个,则有:m=2^k1;n=2^k2;k1≤k2;步骤S3,计算数据表的存储位置为:Nt=key%n=key%(2^k2);步骤S4,计算数据库的存储位置为:Nd=Nt%m=[key%(2^k2)]%(2^k1)=key%(2^k1)。基于上述方法,在程序中寻找数据存储位置时,只需掌握数据库、数据表的数量,即可快速计算出存储位置,无需读取配置文件,其次,在扩容时,分裂数据的过程在同一台机器的数据库中进行,因此具有速度快、停止服务时间小的优势,此外,在迁移到新库时,可实现整表迁移,进而方便了迁移和验证。
技术领域
本发明涉及数据库,尤其涉及一种数据库的分库分表扩容方法。
背景技术
数据库是按照数据结构来组织、存储和管理数据的仓库,它产生于距今六十多年前,随着信息技术和市场的发展,特别是二十世纪九十年代以后,数据管理不再仅仅是存储和管理数据,而转变成用户所需要的各种数据管理的方式。数据库有很多种类型,从最简单的存储有各种数据的表格到能够进行海量数据存储的大型数据库系统都在各个方面得到了广泛的应用。在信息化社会,充分有效地管理和利用各类信息资源,是进行科学研究和决策管理的前提条件。数据库技术是管理信息系统、办公自动化系统、决策支持系统等各类信息系统的核心部分,是进行科学研究和决策管理的重要技术手段。
现有技术中,数据库扩容方法是发现表的行数太大时,直接把表在数据库内分割成两个表,然后在程序的配置文件中修改新表负责的数据范围。同理,当一台服务器上的数据库容量不够时,再添加一台数据库服务器,把数据库和数据表迁移到另外一台,再修改程序中的数据分布配置文件。其缺陷是,当数据经过一些次扩容后,程序的配置文件会越来越长,寻找一条数据库的库、表位置变得繁琐。程序效率和人工查找都变得麻烦。同时,几次的数据库扩容,会移动大部分的数据,有些甚至会又移动回从前的表,造成重复迁移数据。
发明内容
本发明要解决的技术问题在于,针对现有技术的不足,提供一种数据库的分库分表扩容方法,用以实现快速扩容、减少数据拷贝量以及缩短扩容时间。
为解决上述技术问题,本发明采用如下技术方案。
一种数据库的分库分表扩容方法,其包括有如下步骤:步骤S1,设定每个数据库表的唯一标识值为key;步骤S2,设定数据库的数量为m个,设定数据库表的数量为n个,则有:m=2^k1;n=2^k2;k1≤k2;步骤S3,计算数据表的存储位置为:Nt=key%n=key%(2^k2);步骤S4,计算数据库的存储位置为:Nd=Nt%m=[key%(2^k2)]%(2^k1)=key%(2^k1)。
优选地,所述步骤S1中,将数据库的主键作为唯一标识值key。
优选地,每次扩容时,先扩容数据表,将每个数据表分成两个,并且原数据表与扩容得到的新数据表包含在同一个数据库内。
优选地,若继续扩容,则新增数据库,并将对应的数据表整体导入新的数据库中。
本发明公开的数据库的分库分表扩容方法,在程序中寻找数据存储位置时,只需掌握数据库、数据表的数量,即可快速计算出存储位置,无需读取配置文件,其次,在扩容时,分裂数据的过程在同一台机器的数据库中进行,因此具有速度快、停止服务时间小的优势,此外,在迁移到新库时,可实现整表迁移,进而方便了迁移和验证。
附图说明
图1为数据库的分布示意图。
具体实施方式
下面结合附图和实施例对本发明作更加详细的描述。
本发明公开了一种数据库的分库分表扩容方法,其包括有如下步骤:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳市富途网络科技有限公司,未经深圳市富途网络科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810194709.8/2.html,转载请声明来源钻瓜专利网。
- 上一篇:基于智能文稿分析的个性化新闻线索推荐方法
- 下一篇:一种数据处理方法及系统