[发明专利]一种扩容方法和设备有效
申请号: | 201310143192.7 | 申请日: | 2013-04-23 |
公开(公告)号: | CN103268202B | 公开(公告)日: | 2017-02-08 |
发明(设计)人: | 许焰;孙亚萍;周慧强 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | G06F3/06 | 分类号: | G06F3/06 |
代理公司: | 北京中博世达专利商标代理有限公司11274 | 代理人: | 申健 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 扩容 方法 设备 | ||
技术领域
本发明涉及扩容技术领域,尤其涉及一种扩容方法和设备。
背景技术
分布式独立磁盘冗余阵列(Redundant Array of Independent Disks,简称RAID)可以将单个RAID分布在多个物理硬盘的离散空间,从而充分调动系统中的硬盘,将热点平分到尽量多的硬盘,消除热点。同时,硬盘损坏时,更多的硬盘参与重构吗,从而重构时间较长。因而分布式RAID得到越来越广泛的应用,但是企业在购买和使用存储系统时,并不是初始就安装最大配置的硬盘,而是按照业务来购买和增加硬盘的。因此,需要考虑分布式硬盘存储系统的扩容问题。
为了解决硬盘扩容的问题,现有技术中采用扩容时,保持原有的分布式RAID不变,在新增的硬盘上构造一个新的分布式RAID系统。但是这种硬盘扩容的方法需要单次增加较多的硬盘才可以构造出重构时间少和热点比较分散的分布式RAID。并且,扩容后原有的RAID组无法横向扩展到新增的RAID组上,无法降低原有RAID组的重构时间。进一步,现有技术采用扩容时,将新增的硬盘分别加入到原有RAID组中,然后重新应用分布式RAID算法来分配硬盘空间。这种扩容方法不需要单次增加较多的硬盘,可以降低原有RAID组的重构时间。但是,因为扩容过程中需要大批量的小块数据迁移,扩容时间长。
发明内容
本发明的实施例提供一种扩容方法和设备,减少了硬盘扩容所需的时间,提高了硬盘的扩容效率。
为达到上述目的,本发明的实施例采用如下技术方案:
第一方面,提供一种扩容方法,包括:
在分布式独立磁盘冗余阵列RAID系统中,将每个硬盘平均划分为大小相等的虚拟硬盘,其中,所述虚拟硬盘的个数为m的整数倍;所述m为所述分布式RAID系统中最大可以构造的RAID组的个数;所述m为正整数;
将所述原始硬盘平均划分为X个组;其中,所述X为所述分布式RAID系统中每个条带的单位个数;所述分布式RAID系统中原始硬盘的个数为X的整数倍;所述X为正整数;
从每个所述硬盘中选取m个所述虚拟硬盘组成一个原始硬盘;其中,所述所有原始硬盘组成一个原始硬盘组;
依次从每个所述原始硬盘组中选取m个虚拟硬盘组成一个虚拟硬盘组;
在所述分布式RAID系统中,插入由m的整数倍个虚拟硬盘组成的新增硬盘;其中,所述新增硬盘的个数为X的整数倍;
从每个所述新增硬盘上选取m个虚拟硬盘插入所述虚拟硬盘组;
在所述虚拟硬盘组中,将所述原始硬盘中的虚拟硬盘中的数据搬移到所述新增硬盘的虚拟硬盘中。
在第一种可能的实现方式中,结合第一方面,所述从每个所述硬盘中选取m个所述虚拟硬盘组成一个原始硬盘之后,还包括:
在所有的所述原始硬盘组中,在所述虚拟硬盘组号相同的虚拟硬盘上应用分布式RAID算法构造RAID。
在第二种可能的实现方式中,结合第一方面,所述在所述虚拟硬盘组中,将所述原始硬盘中的虚拟硬盘中的数据搬移到所述新增硬盘的虚拟硬盘中之后,还包括:
应用分布式RAID算法在同一个所述虚拟硬盘组中空闲的虚拟硬盘上应用分布式RAID算法构造新的RAID。
在第三种可能的实现方式中,结合第一方面,所述在所述虚拟硬盘组中,将所述原始硬盘中的虚拟硬盘中的数据搬移到所述新增硬盘的虚拟硬盘中,包括:
在每个所述虚拟硬盘组中,选取所述原始硬盘组中虚拟硬盘个数超过特定数量的原始硬盘;其中,所述特定数量为:平均分配所述虚拟硬盘时,每个所述硬盘上可以分配的虚拟硬盘的个数;
将所述原始硬盘组中虚拟硬盘数量超过特定数量的原始硬盘中的虚拟硬盘上的数据平均迁移到新增硬盘上的虚拟硬盘中;其中,所述新增硬盘上的虚拟硬盘与需要搬移数据的虚拟硬盘在同一个虚拟硬盘组中。
第二方面,提供一种扩容设备,包括:
处理单元,用于在分布式RAID系统中,将每个硬盘平均划分为大小相等的虚拟硬盘,其中,所述虚拟硬盘的个数为m的整数倍;所述m为所述分布式RAID系统中最大可以构造的RAID组的个数;所述m为正整数;
所述处理单元,还用于将所述原始硬盘平均划分为X个组;其中,所述X为所述分布式RAID系统中每个条带的单位个数;所述分布式RAID系统中原始硬盘的个数为X的整数倍;所述X为正整数;
选取单元,用于从每个所述硬盘中选取m个所述虚拟硬盘组成一个原始硬盘;其中,所述所有原始硬盘组成一个原始硬盘组;
所述选取单元,还用于依次从每个所述原始硬盘组中选取m个虚拟硬盘组成一个虚拟硬盘组;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310143192.7/2.html,转载请声明来源钻瓜专利网。