[发明专利]无共享分布式数据库的数据分布的方法和装置在审

专利信息
申请号: 201310292152.9 申请日: 2013-07-11
公开(公告)号: CN103345519A 公开(公告)日: 2013-10-09
发明(设计)人: 郭伍得 申请(专利权)人: 华为技术有限公司
主分类号: G06F17/30 分类号: G06F17/30;H04L29/08
代理公司: 北京中博世达专利商标代理有限公司 11274 代理人: 申健
地址: 518129 广东*** 国省代码: 广东;44
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 共享 分布式 数据库 数据 分布 方法 装置
【说明书】:

技术领域

发明涉及通信技术领域,尤其涉及无共享分布式数据库的数据分布的方法和装置。

背景技术

无共享分布式数据库思路是把数据分布到多个数据分片(shard)上,每个shard拥有自己的CPU(Central Processing Unit,中央处理器)和内存,管理自己的存储空间,各个shard之间不共享数据,应用通过分片管理(即数据的存储方式)找到正确的shard来进行数据读写。

现有技术中,可以通过区间划分的方式将待存储数据存储在相应的shard中。

具体的,可以根据MSISDN(移动台国际ISDN<Integrated Services Digital Network,综合业务数字网>号码)的数值对待存储数据进行区间划分,划分后的区域的数量与shard的数量相同,然后,按照一定的准则将相应的区域的待存储数据存储至相应的shard中。

但是,采取这种数据存储方式后,每个shard管理多个区间,当数据库需要扩容时,即增加数据库中包含的shard的数量,这样,还需要对区间进行重新划分,将新划分好的区间分配给相应的shard,由于,各shard对应的区间变化了,因此,各shard中存储的数据也随之变化,导致大部分数据需要在shard之间进行迁移,降低了数据库的性能。

发明内容

本发明的实施例提供一种无共享分布式数据库的数据分布的方法和装置,解决了当数据库扩容后,导致大部分数据需要在shard之间进行迁移,降低了数据库的性能的问题。

为达到上述目的,本发明的实施例采用如下技术方案:

第一方面,提供一种无共享分布式数据库的数据分布的方法,包括:

为数据库中包含的数据分片shard配置第一shard标识;

根据所述第一shard标识将第一待存储数据存储至相应的shard中;

在数据库扩容后,根据数据量最大的shard为新增加的shard配置第二shard标识;

将所述数据量最大的shard中存储的部分数据迁移至所述第二shard标识对应的shard中存储。

在第一种可能实现的方式中,所述为数据库中的数据分片shard配置第一shard标识包括:

将各shard的所述第一shard标识设置为整数,且不同shard的所述第一shard标识不同,相邻shard的所述第一shard标识的差为1;

所述根据所述第一shard标识将第一待存储数据存储至相应的shard中包括:

将所述第一待存储数据的移动台国际综合业务数字网号码MSISDN除以N,得到第一余数,所述N为所述数据库包括的shard的个数;

将所述第一待存储数据存储至与所述第一余数相同的所述第一shard标识对应的shard中。

结合第一方面或第一方面的第一种可能实现的方式,在第二种可能实现的方式中,根据数据量最大的shard为新增加的shard配置第二shard标识包括:

将所述第二shard标识确定为与所述数据量最大的shard对应的第一shard标识相同的shard标识。

结合第一方面或第一方面的第一种可能实现的方式或第二种可能实现的方式,在第三种可能实现的方式中,所述部分数据的数据量与所有数据的数据量的一半的差值小于预设值,所述所有数据为所述数据量最大的shard中存储的所有数据。

结合第一方面或第一方面的第一种可能实现的方式至第三种可能实现的方式中任意一种方式,在第四种可能实现的方式中,所述根据数据量最大的shard为新增加的shard配置第二shard标识之后,还包括:

根据所述第一shard标识和所述第二shard标识将第二待存储数据存储至相应的shard中;

若存在至少两个shard的shard标识相同,且所述第二待存储数据的第一余数与所述至少两个shard的shard标识相同,则所述根据shard标识将第二待存储数据存储至相应的shard中包括:

按照轮流的方式选择所述至少两个shard中的一个,并存储所述第二待存储数据;或者,

将待存储数据存储至所述至少两个shard中的数据量最小的shard中。

结合第一方面,在第五种可能实现的方式中,所述为数据库中的数据分片shard配置第一shard标识包括:

将预设参考区间平均分成N个子区间,每个子区间对应一个shard,所述N为所述数据库中包含的shard的数量,所述预设参考区间为整数区间;

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201310292152.9/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top