一种用于分布式存储系统节点修复的编码方法技术方案

技术编号:15520264 阅读:277 留言:0更新日期:2017-06-04 09:52
一种用于分布式存储系统节点修复的编码方法,首先提取分布式存储系统的编码参数并构建存储系统的编码模型,引入保护列、设计列,得到扩展后的编码模型,然后根据归一化修复带宽的偏导确定两者的比例,进而得到保护列、设计列取值,最后根据保护列、设计列取值建立附加信息构造矩阵并完成附加信息的构造,将附加信息叠加到设计列的检验信息之上,完成generalized piggybacking code的编码构造。本发明专利技术没有额外存储开销,在节点修复过程中能够保持存储系统原先的译码特性不变,另外在节点修复过程中不需要复杂的矩阵运算,只需要简单的线性叠加运算,复杂度低,便于实现,具有很好的实用价值。

Encoding method for node repair of distributed storage system

An encoding method for distributed storage system node repair, first extract the encoding parameters of the distributed storage system and encoding model of storage system, the introduction of protection columns, column design, by encoding the extended model, and then according to the normalized partial derivative to determine the repair bandwidth ratio between the two, and then get the protection design of columns, column values. The last column, column structure design according to the protection value of establishing additional information matrix and complete the additional information, additional information is added to the above design a series of inspection information, complete the encoding structure of generalized piggybacking code. The invention has no extra storage overhead, can maintain the original decoding characteristics of storage system in the same node in the repair process, in addition to the node repair process does not require complex matrix operations, only linear superposition of simple operation, low complexity, easy to implement, has good practical value.

【技术实现步骤摘要】
一种用于分布式存储系统节点修复的编码方法
本专利技术涉及分布式存储领域,特别是一种用于分布式存储系统节点修复的编码方法。
技术介绍
分布式存储系统因其投入成本低,存储效率高等优点而广泛被大型网络应用所采纳,但是受到频发的故障、维护等因素的影响,分布式存储系统各个分离的存储节点的可靠性已经成为影响分布式存储系统性能的重要因素。目前,以纠删码为代表的差错控制编码技术已经应用到分布式存储系统中。最大距离可分(Maximumdistanceseparable,MDS)码是一种最常用于存储系统的纠删码技术,在一个参数为(n,k,d)的MDS码中,n代表码长,k为信息的维度,它的最小汉明距离是d=n-k+1。对于固定的参数n和k,MDS码的最小汉明距离d=n-k+1达到了最大的可能取值,因此最大距离可分码可以纠正码字中多达(n-k)个删除错误。使用参数为(n,k)的最大距离可分码进行编码的分布式存储系统如图1所示,该分布式存储系统首先将待存储的原始数据分割成k个信息片段,然后使用(n,k)最大距离可分码编码成n个信息片段,最后再将这n个信息片段分散的存储在n个分离的节点中去。这样便可以用系统中任意k个节点信息恢复出原始数据,换言之,整个系统可以抵抗任意(n-k)的节点的损坏。通过引入冗余信息,整个系统的可靠性有了大幅度的提升。当一些节点损坏后,利用健全节点的数据来恢复损坏节点内丢失的数据的节点修复技术也成为了保持整个分布式存储系统可靠性的一个最主要的手段。节点修复的示意图如图2所示,衡量一个节点修复技术性能的一个关键指标叫做“修复带宽”,修复带宽是指为了修复分布式存储系统中的单个损坏节点而需要从其他健全节点获取的数据量。对于采用MDS编码的分布式存储系统,当然可以利用MDS码自身的删除修复特性来进行节点修复,但是这个过程的修复带宽比较大:假如采用参数为(n,k)的MDS编码的分布式存储的一个存储节点发生损毁,利用剩下任意k个健全节点的数据就能恢复出整个文件系统,从而修复了损毁节点的数据。可见此过程的修复带宽为k个节点的数据量,相当于原始存储信息的大小。当前有很多研究者都致力于分布式存储系统的节点修复的方法的研究,其中具有代表性的工作是再生码(RegeneratingCodes)。2010年美国南加州大学的A.G.Dimakis教授提出了用再生码来减少分布式存储系统修复节点数据时所需要的修复带宽。再生码利用网络编码的思想,将存储和修复过程转化为多播问题,并利用图论中的最大流最小割理论推导出了再生码可以达到的修复带宽的理论下界。但是再生码在面对实际系统的使用存在几个很大的问题:1、再生码不能在存储系统原有的编码基础上升级,而是要重新设计部署整个系统,系统改造成本较大;2、再生码并不是对所有码参数(n,k为任意满足n>k的整数)都有效;3、再生码的构造过程复杂,其修复过程的计算复杂度也很大,因此目前几乎没有采用再生码的分布式存储系统。
技术实现思路
本专利技术解决的技术问题是:克服现有技术的不足,提供了一种用于分布式存储系统节点修复的编码方法。本专利技术的技术解决方案是:一种用于分布式存储系统节点修复的编码方法,包括如下步骤:(1)提取当前分布式存储系统所采用的纠删码参数,使用纠删码参数对原始信息进行编码并分别存储在分布式存储系统;(2)生成多组分布式存储系统编码模型;(3)生成扩展后的存储结构,其中,扩展后的存储结构中每一行分别代表分布式存储系统中的每一个存储节点;(4)根据扩展后的存储结构生成附加信息构造矩阵,当分布式存储系统中系统节点数据损坏时,使用附加信息构造矩阵完成当前损坏节点修复。所述的提取当前分布式存储系统所采用的纠删码参数,使用纠删码参数对原始信息进行编码并分别存储在分布式存储系统的方法为,提取当前分布式存储系统所采用的纠删码参数,假设当前分布式存储系统采用系统型纠删码参数(n,k,r),n表示系统型纠删码码长,k表示系统型纠删码码字中信息维度,r表示系统型纠删码码字中校验信息个数,n=r+k,在当前分布式存储系统中原始信息被分为k个数据段,然后利用参数为(n,k,r)的系统型纠删码将原始信息的k个数据段编码成n个数据段,编码后的n个数据段分别存储在分布式存储系统的n个离散节点中;所述的分布式存储系统包括n个节点,k个系统节点,r个校验节点,采用的r个维度为k的编码向量为p1、p2、…、pr。所述的生成多组分布式存储系统编码模型的方法为,引入变量s、p,用维度为k的向量u=[u1,u2,…,uk]代表分布式存储系统需要编码的原始信息,进而得到当i不大于k时分布式存储系统中第i个节点存储的数据用ui表示,当i大于k时分布式存储系统中第i个节点存储的数据用表示,i=1,2,3,…,k,k+1,k+2,…,n,得到分布式存储系统中各个节点存储的数据分别用u1,u2,…,uk,表示,并作为编码模型,遍历s+p次,得到s+p组编码模型;其中,第j组编码模型记为uj,1,uj,2,…,uj,k,uj=[uj,1,uj,2,…,uj,k]表示第j组编码模型使用的原始信息代表向量,uj,x表示uj中的第x个原始信息,s表示保护列的列数,p表示设计列的列数,x=1,2,…,k,j=1,2,…,s+p,s为保护列的列数,p为设计列的列数。所述的生成扩展后的存储结构的方法为,将第j组uj,1,uj,2,…,uj,k,作为当前分布式存储系统扩展后的存储结构的第j列,遍历所有j的取值,得到扩展后的存储结构,扩展后的存储结构中每一行分别代表分布式存储系统中的每一个存储节点,将扩展后的存储结构中第1到第k行的第1到第s列作为区域A,将第1到第k+1行的第s+1到第s+p列作为区域B,将扩展后的存储结构中第k+1到第k+r行的第1到第s列作为区域C,将扩展后的存储结构中第k+2到第k+r行的第s+1到第s+p列作为区域D。所述的根据扩展后的存储结构生成附加信息构造矩阵,当分布式存储系统中系统节点数据损坏时,使用附加信息构造矩阵完成当前损坏节点修复的方法包括如下步骤:(1)计算generalizedpiggybackingcode的归一化修复带宽函数γ为其中,定义保护列、设计列的比例为求出γ的下界为将γ的下界记为Γlow(pp),进而得到其中,s为保护列的列数,p为设计列的列数;(2)求出Γlow(pp)关于pp的偏导数为然后令Γlow(pp)关于pp的偏导数为0,确定Γlow(pp)取为正数的极小值时pp的值为(3)如果不是0.25的倍数,则在左侧选取两个与最近且为0.25倍数的数,记为d1、d2,在右侧选取两个与最近且为0.25倍数的数,记为d3、d4,进而得到4组变量s、p取值,并记为(s1,p1)、(s2,p2)、(s3,p3)、(s4,p4),其中,若(s1,p1)、(s2,p2)、(s3,p3)、(s4,p4)中存在1组取值令γ最小,将该组取值作为变量s、p取值,若(s1,p1)、(s2,p2)、(s3,p3)、(s4,p4)中存在至少两组取值令γ最小且s+p的取值不等,将令γ最小且s+p最小的取值作为变量s、p取值,若(s1,p1)、(s2,p2)、(s3,p3)、(s4,p4)中存在至少两组取值令γ最小且s+p的取值本文档来自技高网
...
一种用于分布式存储系统节点修复的编码方法

【技术保护点】
一种用于分布式存储系统节点修复的编码方法,其特征在于包括如下步骤:(1)提取当前分布式存储系统所采用的纠删码参数,使用纠删码参数对原始信息进行编码并分别存储在分布式存储系统;(2)生成多组分布式存储系统编码模型;(3)生成扩展后的存储结构,其中,扩展后的存储结构中每一行分别代表分布式存储系统中的每一个存储节点;(4)根据扩展后的存储结构生成附加信息构造矩阵,当分布式存储系统中系统节点数据损坏时,使用附加信息构造矩阵完成当前损坏节点修复。

【技术特征摘要】
1.一种用于分布式存储系统节点修复的编码方法,其特征在于包括如下步骤:(1)提取当前分布式存储系统所采用的纠删码参数,使用纠删码参数对原始信息进行编码并分别存储在分布式存储系统;(2)生成多组分布式存储系统编码模型;(3)生成扩展后的存储结构,其中,扩展后的存储结构中每一行分别代表分布式存储系统中的每一个存储节点;(4)根据扩展后的存储结构生成附加信息构造矩阵,当分布式存储系统中系统节点数据损坏时,使用附加信息构造矩阵完成当前损坏节点修复。2.根据权利要求1所述的一种用于分布式存储系统节点修复的编码方法,其特征在于:所述的提取当前分布式存储系统所采用的纠删码参数,使用纠删码参数对原始信息进行编码并分别存储在分布式存储系统的方法为,提取当前分布式存储系统所采用的纠删码参数,假设当前分布式存储系统采用系统型纠删码参数(n,k,r),n表示系统型纠删码码长,k表示系统型纠删码码字中信息维度,r表示系统型纠删码码字中校验信息个数,n=r+k,在当前分布式存储系统中原始信息被分为k个数据段,然后利用参数为(n,k,r)的系统型纠删码将原始信息的k个数据段编码成n个数据段,编码后的n个数据段分别存储在分布式存储系统的n个离散节点中;所述的分布式存储系统包括n个节点,k个系统节点,r个校验节点,采用的r个维度为k的编码向量为p1、p2、…、pr。3.根据权利要求1或2所述的一种用于分布式存储系统节点修复的编码方法,其特征在于:所述的生成多组分布式存储系统编码模型的方法为,引入变量s、p,用维度为k的向量u=[u1,u2,…,uk]代表分布式存储系统需要编码的原始信息,进而得到当i不大于k时分布式存储系统中第i个节点存储的数据用ui表示,当i大于k时分布式存储系统中第i个节点存储的数据用表示,i=1,2,3,…,k,k+1,k+2,…,n,得到分布式存储系统中各个节点存储的数据分别用表示,并作为编码模型,遍历s+p次,得到s+p组编码模型;其中,第j组编码模型记为uj=[uj,1,uj,2,…,uj,k]表示第j组编码模型使用的原始信息代表向量,uj,x表示uj中的第x个原始信息,s表示保护列的列数,p表示设计列的列数,x=1,2,…,k,j=1,2,…,s+p,s为保护列的列数,p为设计列的列数。4.根据权利要求1或2所述的一种用于分布式存储系统节点修复的编码方法,其特征在于:所述的生成扩展后的存储结构的方法为,将第j组作为当前分布式存储系统扩展后的存储结构的第j列,遍历所有j的取值,得到扩展后的存储结构,扩展后的存储结构中每一行分别代表分布式存储系统中的每一个存储节点,将扩展后的存储结构中第1到第k行的第1到第s列作为区域A,将第1到第k+1行的第s+1到第s+p列作为区域B,将扩展后的存储结构中第k+1到第k+r行的第1到第s列作为区域C,将扩展后的存储结构中第k+2到第k+r行的第s+1到第s+p列作为区域D。5.根据权利要求1或2所述的一种用于分布式存储系统节点修复的编码方法,其特征在于:所述的根据扩展后的存储结构生成附加信息构造矩阵,当分布式存储系统中系统节点数据损坏时,使用附加信息构造矩阵完成当前损坏节点修复的方法包括如下步骤:(1)计算gen...

【专利技术属性】
技术研发人员:袁帅黄勤
申请(专利权)人:中国空间技术研究院
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1