[发明专利]一种基于网络编码的存储扩展方法有效
申请号: | 201810304384.4 | 申请日: | 2018-04-08 |
公开(公告)号: | CN108536396B | 公开(公告)日: | 2020-05-19 |
发明(设计)人: | 胡燏翀;张晓阳;李柏晴;陈文祥;熊依;程良锋;徐熙豪 | 申请(专利权)人: | 华中科技大学 |
主分类号: | G06F3/06 | 分类号: | G06F3/06 |
代理公司: | 华中科技大学专利中心 42201 | 代理人: | 曹葆青;廖盈春 |
地址: | 430074 湖北*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 网络 编码 存储 扩展 方法 | ||
本发明公开了一种基于网络编码的存储扩展方法,包括:将存储扩展前的条带划分为多个扩展组,并进一步将每个扩展组划分为PG和DG;在DG内循环地依次从原节点中取数据块,得到一系列的数据集合;利用网络编码对每一个数据集合进行编码生成更新块,使用这些更新块对PG中的编码块进行本地更新或者异地更新;将编码块或者数据块传输至新增节点上,并保持扩展后数据块与编码块在所有节点上均匀放置;删除所有传输至新节点的数据块和编码块,并删除DG内所有的编码块。本发明在存储扩展时利用存储节点自身的计算资源对数据块进行编码并对部分编码块进行本地更新,减少了扩展带宽,提高了扩展速度,并在某些参数条件下达到最优存储扩展。
技术领域
本发明属于计算机存储领域,更具体地,涉及一种基于网络编码的存储扩展方法。
背景技术
分布式存储系统将大量的数据存储在一组存储节点上以提供一个可扩展平台,通过将数据存储为跨节点的条带能够对抗存储失效,从而提供数据存储可靠性。纠删码是一种冗余机制,拥有高存储效率并可以提供高可靠性,因而被广泛应用于分布式存储系统中。
为了适应逐渐增加的存储需求,存储系统中会加入一些新的节点以增加存储空间和服务带宽。这种情况下,存储系统需要将已有的存储节点上经过编码的数据重新分布在所有已有的和新加的节点上以维持平衡的数据分布。有时,还需要重新设置一些纠删码的参数来维持合适的冗余度,以此来适应在不同的存储效率,容错能力,读取性能和管理复杂度之间的取舍。例如,存储系统可以通过增加存储冗余度来减少修复开销,或者当面对不同的工作负载时在不同冗余度的纠删码之间动态转换以取得读写性能和容错能力之间的平衡。
存储扩展是指存储系统重新分布已有的数据到不同的节点上,并且基于新的数据布局来重新计算编码块。对于使用(n,k)-RS纠删码的存储系统,扩展前,数据块和编码块以Round-Robin的形式均匀放置于分布式存储系统中,每个条带包含k个数据块与n-k个编码块;扩展后,数据将从n个节点扩展到n+s个节点上,编码系数由(n,k)变为(n+s,k+s),同时保持均匀分布特性,扩展前后数据量保持不变。因为存储扩展进程不可避免地会引发大量的数据传输,所以提出新的存储扩展方法从而减小扩展带宽,有十分重要的意义。
发明内容
针对现有技术的缺陷和改进需求,本发明提供了一种基于网络编码的存储扩展方法,其目的在于利用存储节点自身提供的计算资源进行网络编码生成更新块,利用这些更新块对部分编码块进行本地更新,并传输更新块对其余编码块进行更新,从而减少更新编码块时所需要的传输带宽,进而减少存储扩展的扩展带宽。
为实现上述目的,本发明提供了一种基于网络编码的存储扩展方法,包括:
(1)划分扩展组的步骤:
将存储扩展前的条带划分为多个扩展组,每个扩展组包含n(k+s)(n+s)个条带;进一步将每个扩展组划分为PG和DG,PG包含扩展组前nk(n+s)个条带,用于进行编码块的更新,DG包含扩展组剩余的ns(n+s)个条带,用于生成更新块;其中,n为原节点数,k为扩展前每个条带中包含的数据块的数量,s为根据存储扩展的容量和带宽需求新增的节点数;
(2)计算更新块的步骤:
对于每一个扩展组,在DG内循环地依次从原节点X1~Xn中取数据块,每次从一个节点上顺序地取s个数据块,得到一个包含s个数据块的集合Dw,1≤w≤nk(n+s),用于更新PG内第w个条带中的编码块;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华中科技大学,未经华中科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810304384.4/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种清理硬盘的方法和装置
- 下一篇:信息处理装置和方法、以及图像形成装置