Network coding for distributed storage systemsWord文件下载.docx
《Network coding for distributed storage systemsWord文件下载.docx》由会员分享,可在线阅读,更多相关《Network coding for distributed storage systemsWord文件下载.docx(12页珍藏版)》请在冰豆网上搜索。
[9]。
然而,出现并发症:
在分布式存储系统中,
冗余节点必须不断刷新失败或者离开系统,涉及大数据传输网络。
这个问题是简单的最好的说明图1的例子:
一个数据对象被划分在两个片段y1,y2(说,每个尺寸1mb),这些编码为四个x1,碎片。
x4的大小相同,任何的财产两个的四个可以用来恢复原始y1,y2。
现在,假设存储节点x4x5和一个新的节点失败,新来的,需要与现有的节点进行通信并创建一个新的编码数据包,这样任何两个x1,x2,x3,x5足以恢复。
显然,如果新来的可以接收任何两个编码片段(比如从x1,x2),
整个数据对象的重建是可能的可以生成一个新的编码片段(例如制作一个新的独立的线性组合现有的)。
然而,这需要沟通2mb的网络生成一个擦除编码片段2图2。
例子:
一个修复(4、2)最小储备量重新生成代码。
所有的包(箱)这个数字有大小0.5mb和每个节点存储两个包。
请注意,任何两个节点有四个方程,可用于恢复数据,a1、a2、b1、b2。
奇偶校验数据包p1,p2,p3用于创建新来的两个包,需要修复带宽为1.5mb。
繁殖系数随机选择和显示的例子是结束了简单的整数(尽管任何足够大的磁场就足够了)。
关键的一点是,节点不发送自己的信息,但生成小奇偶校验数据包的数据,并将其转发到新人,他们进一步混合,生成两个新的包。
注意,线性组合系数被记录在数据包识别数据包组成。
在x5大小1mb。
一般来说,如果一个对象sizeMis分裂在k初始片段,修复带宽这个策略是米位生成的片段大小M/k。
相比之下,如果相反,使用复制一个新的可能只是复制品从任何其他现有节点复制,导致没有带宽开销。
人们普遍相信这k系数的开销是一个不可避免的缺点,在修复带宽有编码的好处(见,例如,[10])。
事实上,所有已知的编码结构需要访问原始数据对象生成编码片段。
在本文中,我们表明,令人惊讶的是,存在擦除码,可以没有沟通整个修理数据对象。
特别是,
(2)的例子,我们表明,新来的1.5mb修复失败和通信这是信息理论最低(见图2一个例子)。
更为普遍的是,我们确定一个之间的权衡存储和修复带宽和显示代码存在这最优折衷曲线上每个点的实现。
我们称之为再生码躺在这个最优折衷曲线代码。
注意权衡地区计算纠正一个错误在[1]和ac的阈值计算了结果每一个可行的(),对。
权衡两个极值点的曲线是特殊的利益,我们称他们为最小储备量再生(MSR)代码和最小带宽再生(MBR)代码。
前者对应于最大距离可分(MDS)代码,也可以有效地修复。
在另一端的权衡是MBR代码,有最低修复带宽。
MBR的好处结构是,如果允许每个存储节点存储略高于M/k位,可以修复带宽明显减少了。
本文的其余部分组织如下:
第二部分我们将讨论相关的背景和相关工作从网络编码理论和分布式存储系统。
在第三部分中,我们介绍了信息流的概念图,代表如何沟通和信息存储在网络节点加入和离开系统。
在部分III-B我们描述的最小存储和修复带宽和显示之间存在权衡这两个
量,可以表达的最大流量在这个图。
我们进一步表明,任何有限的信息流图,存在再生可以实现的代码任何时候最低存储/带宽可行域我们计算。
在第四节,我们评估的性能提出了再生代码使用失败的痕迹真正的系统和比较选择方案提出了分布式存储的文献。
最后,技术方面的理论分析可以发现的合同附件。
二。
背景和相关工作
A:
擦除码经典编码理论关注之间的权衡冗余和错误宽容。
redundancyreliability而言
权衡,最大距离可分(MDS)代码是最优的。
最知名的MDS的家庭擦除码是Reed-Solomon代码。
最近的研究擦除编码关注其他性能指标。
为稀疏图码[11],[12],[13]nearoptimal所能达到的水平性能redundancy-reliability而言权衡,也需要编码和解码复杂度较低。
另一条线的研究消除编码的存储应用程序是平价数组编码;
[14],[15],[16],[17]。
数组代码是完全基于XOR和操作他们通常设计的目标低编码,解码和更新的复杂性。
参见本教程板(18)上擦除存储应用程序编码。
3这些研究相比,本文重点是不同的性能指标。
具体来说,出于实用在大型分布式存储系统的担忧,我们探索擦除码,提供良好的折衷的冗余,可靠性和修复带宽的权衡。
b.网络编码网络编码是一种传统的泛化路由(转发)方法。
在传统的路由,每个中间节点在网络商店和转发收到的信息。
相比之下,网络编码允许中间节点生成输出数据通过编码(即。
先前,计算某些函数)接收输入数据。
因此,网络编码允许信息“混”在中间节点。
潜在的优势网络编码在路由包括资源(例如,带宽和功率)效率、计算效率鲁棒性网络动态。
如图所示的先驱Ahlswedeetal。
[19],网络编码可以实现割集约束多播情况下的吞吐量。
后续工作[20],[21]表明,线性网络代码满足多播问题。
何鸿燊的研究等。
[22]和桑德斯etal。
[23]进一步表明,随机的线性网络编码在一个足够大的有限域(渐近)实现多播的能力。
一个多项式复杂过程构建确定性网络代码实现多播能力是由Jaggietal.[24]。
介绍了分布式存储,网络编码在[25],[6]的无线传感器网络。
的许多方面编码是探索[7],[26],[27],[28]网络存储应用程序。
以前的研究相比,网络编码、摘要
调查的应用网络编码的修复分布式存储的问题。
考虑修复网络带宽和代码维护的概念时间问题非常独特。
我们的中心目标是探讨基本的存储和之间的权衡修复网络带宽。
c.分布式存储系统一些最近的研究[8],[29],[30],[4]设计了和评估大规模p2p分布式存储系统。
这样的系统冗余管理策略一直在评估[9],[4],[10],[31],[32]。
其中,[9],[4],[10]而复制擦除码在bandwidth-reliability权衡空间。
的分析Weatherspoon和Kubiatowicz[9]显示
擦除码可以减少带宽使用的级与复制。
Bhagwanetal。
[4]在模拟的一个类似的结论全部召回
存储系统。
罗德里格斯和Liskov修复[10]提出一个解决方案问题,我们称之为混合策略:
一个特殊的存储节点维护一个完整的副本除了多个erasurecoded碎片。
节点存储副本可以产生新的碎片和寄给新来者,因此转移justM/k字节的新片段。
然而,维持一个额外的副本在一个节点上稀释的网络带宽的使用效率消除代码和复杂系统设计。
例如,如果副本丢失,无法创建新片段,直到
恢复。
作者表明,快速流转的环境中(即。
高速率的节点加入/离开),消除代码提供大存储的好处但带宽成本太高了为P2P分布式存储系统中,实际使用混合策略。
在低转网环境,减少在带宽可以忽略不计。
在moderate-churn环境中,有一些好处,但是这可能是超越的体系结构复杂性,擦除码引入补充道四节中进一步讨论。
这些结论是基于解析模型使用参数估计从实际系统的痕迹。
比起[9],[10]使用更小的值k(7,而不是32)和混合策略来解决代码再生问题。
在第四节,我们遵循的评价方法[10]测量两个冗余的性能维护我们介绍方案。
三。
分析
我们的分析是基于一个特定的图形表示分布式存储系统,我们称之为信息流图g.这图描述
通过沟通信息的数据对象网络,存储在节点有限的内存,和到达重建点数据收集器。
信息流图
信息流图是一个有向无环图组成的三种节点:
一个单一的数据源,存储节点习近平习,数据收集器DCi。
单一节点对应于原始数据的来源。
存储我系统中的节点是由存储输入节点表示习习,存储输出节点,这两个节点由直接连接边缘习近平在!
习与容量相等我在节点存储的数据量。
参见图3的说明。
江泽民[28]独立提出了建设信息流图非常相似,但是对于优化一个不同的目标。
给定的存储系统的动态特性考虑,信息流向图也在时间演化。
在任何时间,图中的每个顶点是积极的或不活跃的,这取决于网络中是否可用。
只在最初的时候,源节点年代活跃;
然后它接触一组初始的存储节点,连接到他们的输入(鑫)定向边缘的无限能力。
从这个时候开始,变得和原始源节点仍不活跃在接下来的时间步,最初选择存储节点变得活跃,他们代表一个分布式消除代码,对应于所需的系统的状态。
如果一个新节点加入系统,它只能连接与活跃节点。
如果新来的j选择连接活跃的存储节点我,然后我们添加一个定向边缘习去xj与能力,等于的信息量沟通从节点我新来的。
注意,它可能沟通是必要的节点比他们更多的数据4图3。
插图对应流图G的信息
(2)图1的代码。
分布式存储方案使用一个(4、2)擦除代码的任何2片段足以恢复原始数据。
如果节点x4变得不可用,新节点加入系统中,我们需要构建x5的新编码片段。
为此,节点x5连接到d=3活跃的存储节点。
假设从每个活跃存储位沟通感兴趣的节点,是最低要求。
min-cut分离源和数据收集器必须大于M=2mb的重建是可能的。
对于这个图,min-cut值等于1+2,暗示0.5mb是足够的和必要的。
存储在修复期间,(即d>
)的例子
(2)消除代码。
如果一个节点离开系统,不活跃的。
最后,一个数据收集器直流是一个节点相对应
请求来重建数据。
数据收集器连接子集的活跃节点通过边缘与无限的能力。
一个重要的概念与信息流图的最小削减:
减少图G(导演)源和一个固定的数据收集器节点之间的直流是一个C子集的边缘,没有直接路径开始从年代特区没有一个或多个c风格的边缘最小割的减少之间的年代和直流边缘能力之和最小。
b.Storage-Bandwidth权衡
我们现在准备本文的主要结果,可行的表征storage-repair带宽点。
设置如下:
我们正常的冗余
想要维持需要n活跃存储节点,每个存储位。
当一个节点失败,新来的人沟通位分别来自任何d幸存的节点。
因此总修理带宽是=d(参见图3)。
我们限制我们的注意力对称设置,它要求任何k存储节点可以恢复原始文件,和一个新人现有的相同数量的信息节点。
每组参数(n,k,d,),有一个家庭信息流图,每个对应一个特定的节点故障/维修的演变。
我们表示这个家庭的有向无环图G(n,k,d,,)。
一个(n,k,d,)元组将是可行的,如果一个代码与存储和修复带宽的存在。
例如在图3中,点(4、2、3、1mb,1.5mb)是可行的(和一个代码实现如图2所示)和最优权衡而一个通信标准消除代码整个数据对象将对应于=2mb。
注意,n,k,d必须是整数,如果有一个失败的新人最多可以连接到所有的n−1节点,所以dn−1和,,=d是负值真正的估值修复过程的参数。
定理1:
对于任何(n,k,d),点(n,k,d,)是可行的,和线性网络编码足够了去实现它们。
信息在理论上是不可能的实现分<
(n,k,d)。
阈值函数(n,k,d)如下:
(n,k,d)=(米2k,[f(0)+1)米−g(我)
凯西−我,2(f(我),f(我−1)),
(1)在哪里f(我)=博士2(2k−−1)+2k(d−k+1)
(2)g(我)=(2d−2k+我+1)二维,(3)在dn−1。
d,n,k,最低维修带宽是分钟=f(k−1)=
博士22kd−k2+k。
(4)这个定理的完整证明在附录中给出。
一个重要的观察是,最低修复带宽=dd人数的递减函数参与修复的节点。
虽然新来的沟通更多的节点,每个交流的大小包成为小d足够快的产品减少,随着d增加,因此对d=n−1最小。
我们的分析的主要思想是代码修复问题可以被映射到一个多播问题的信息吗流图。
已知的结果的基础上对网络编码可以实现多播,代码修复当且仅当底层的信息流向图已经足够大min-cuts。
这种情况导致的修复率计算
定理1,当这些条件都得到满足,确定的再生码可以找到(固定数量的失败)利用该算法Jaggietal.[24]。
此外,简单的高概率的随机线性组合就足够了随着执行的字段长度编码,所示。
etal.[22]。
大量的技术分析证据包括计算任意最低削减图G(n,k,d,),和解决的优化问题为最小化
受到足够的流量限制。
最优折衷曲线为k=5,n=10d=9,d=k=10,n=15日14如图4所示(上)分别(底部)。
特殊情况:
最小储备量再生(MSR)代码和最小带宽再生(MBR)代码
现在我们研究两个极值点的最佳折衷曲线,对应于存储效率和最好的分别最低修复带宽。
我们称之为代码实现这些点最小储备量再生(MSR)代码和最小带宽再生(MBR)代码,分别。
修复一个节点带宽g存储每个节点最佳折衷k=5,n=10
修复一个节点带宽g存储每个节点最佳折衷k=10,n=15图4。
之间的最佳折衷曲线存储
和修复带宽为k=5,n=10(左)和k=10,n=15(右)。
情节M=1和d=n−1。
注意,消除传统编码对应点(=1,=0.2)和(=1,=0.1)的顶部和底部的情节。
6从定理1,最低可以验证
存储的观点是通过对(MSR,MSR)=
(5)如前所述,MSR=dMSR是修复带宽递减函数d的节点数量的参与在修复。
自从MSR代码存储在每个节点k位同时确保任何k编码块可以用来恢复原始文件,他们是等价的最高标准
距离可分(MDS)代码。
如果我们代替d=k上面的公式,我们观察到的总沟通维修是米,原始文件的大小。
因此,如果我们只允许一个新人联系k节点,这是不可避免的整个数据对象沟通修复一新的片段这是天真的修复方法,可以执行任何MDS代码。
然而,如果对一个新人来说是可能的联系
比k节点MSR代码可以减少修复沟通MSR,最小化d=n−1:
(MSR,分钟MSR)=
(6)我们分开了M/mink因素MSRMSR的说明编码一个n−1交流n−导热系数超过他们的商店基本扩张MDS结构所必需的在reliability-redundancy最佳折衷。
作为一个数值的例子,为(n,k)=(14日7),新来的只需要沟通从每个d=49位n−1=13活跃存储节点,使修复带宽
相当于13米49岁,需要生成一个片段的大小7。
另一端的权衡是MBR代码,有最低修复带宽。
它可以验证的最小点是通过修复带宽(MBR,MBR)=医学博士22kd−k2+k,
(7)注意再生码最小带宽,存储大小等于,的总数位沟通吗在修复。
如果我们设置最优值
(8)因此MBR代码不会产生修理带宽扩展就像一个复制系统,具体交流在维修期间存储的信息量。
然而MBR代码需要一个扩展因数2n−22nk−−1存储信息和不再是最优的他们的可靠性冗余。
四、评价在本节中,我们比较再生码与其他冗余管理方案在分布式的上下文中存储系统。
我们遵循的评价方法[10],它包含一个简单的分析模型它的参数是获得从节点可用性的痕迹吗测量在一些真正的分布式系统。
我们开始在节IV-A节点动力学的讨论和目标相关的分布式存储系统,
即可靠性、带宽和磁盘空间。
我们介绍节IV-B模型和估计实际的值其参数IV-C节。
部分IV-D包含我们评估的定量结果。
四节,我们讨论定性再生代码和之间的权衡其他策略,以及我们的结果改变的结论[10],擦除码提供有限的实际效益。
节点动力和目标在本节中,我们介绍一些背景和术语这是最常见的工作了吗部分II-C。
我们画一个永久和瞬态之间的区别节点故障。
一个永久的失败,如永久性的离开一个节点的系统或磁盘故障,结果在数据存储在节点上的损失。
相反,数据保存在一个短暂的失败,如重启或临时网络断开。
我们说一个节点可用时,它可以通过网络检索数据。
分布式存储系统提供两种类型的企图可靠性:
可用性和耐久性。
一个文件是可用的当它可以重建从数据存储在目前可用的节点。
如果它有维护文件的耐久性没有失去由于永久节点故障:
也就是说,它可能可以在将来的某个时候。
这两个属性是可取的,但在本文中,我们报告结果的可用性只有。
具体来说,我们将显示文件不可用,分数文件不可用的时间。
b模型我们使用一个模型,旨在捕获averagecase带宽用于维护系统中的一个文件,和结果平均文件的可用性。
与小例外,这个模型和后续评估的参数是相当于[10]。
虽然这评价方法是一个重要的简化的存储系统,它允许我们直接与结论进行比较[10]的计算精确值罕见事件。
该模型有两个关键参数,f和a。
首先,我们假设在期待f存储节点的一小部分单位时间的永久文件数据失败,导致数据传输修复失去的冗余。
其次,我们在任何假设给定的时间存储数据节点时,节点是可用的
与一些概率和概率(1−目前经历一个短暂的失败)。
此外,模型假设,如果一个节点可以是独立的
所有其他节点的可用性。
在这些假设下,我们可以计算出预期可用性和维护各种冗余带宽计划维护一个M字节的文件。
我们利用1除了评估一个更大的组策略和使用组不同的痕迹,我们计算带宽成本由于永久节点故障,而不是失败和连接。
大多数设计[4],[33]可以避免的对节点连接。
此外,我们直接而计算概率比使用近似二项。
7所有计划除了MSR码,数量带宽等于使用的冗余被替换,这是在期待f倍的存储使用。
复制:
如果我们商店R副本的文件,然后我们商店R·
M字节总数,期望我们必须更换f·
R·
M字节单位时间。
如果没有文件不可用副本是可用的,发生的概率(1−)R。
理想的擦除码:
相比之下,我们显示了带宽和可用性的假设(n,k)消除代码策略可以“神奇”创建一个新的包转移是M/k字节(即。
包的大小)。
设置n=k·
R,这一策略发送字节/f·
米
单位时间内,不可用概率Uideal(n,k):
=
混合动力:
如果我们商店的一个完整副本(n,k)加上一个擦除代码中n=k·
(R−1),然后我们再存储R·
M字节总数所以我们转移f·
M字节单位时间期望。
文件不可用,如果副本不可用不到kerasure-coded包可用,它发生的概率(1−)·
Uideal(n,k)。
最小储备量再生码:
一个(n,k)MSR
代码冗余R=n/k商店RMbytes总共f·
M字节单位时间必须更换。
正如前面提到的,我们将MSR的开销MSR的额外代码数量的信息,需要转移比较片段大小M/k:
MS
(9)因此,更换一个片段需要转移了网络MSR时间片段的大小在最有利的情况下新连接到d=n−1节点构造一个新的片段。
因此,这导致f·
M·
MSR字节发送单位时间,和无效性Uideal(n,k)。
最小带宽再生码:
同样的,方便定义MBR代码开销金额吗信息转移的理想片段大小:
(10)因此,一个(n,k)MBR代码存储M·
n·
MBR字节总。
所以在期待f·
MBR字节转移
单位时间内,没有再次Uideal(n,k)。
c.估计f和a在本节中,我们描述了我们估计f,分数单位时间永久失败的节点,和一个意思节点的可用性,基于节点的可用性在几个的痕迹分布式系统。
我们使用四个节点可用性相差很大的痕迹特点,总结在表一、有效双平[34]跟踪是基于Ping每15分钟对200-400年所有节点之间有效的,一个稳定、管理网络的实验研究。
我们认为一个节点时在一个15分钟的间隔至少一半的ping间隔成功发送给它。
在许多的时期,所有或几乎所有有效的节点,最有可能由于系统升级计划或测量错误。
排除这些情况下,我们“清洗”跟踪:
每一段的停机时间在一个特定的节点,我们删除那个时期(即在考虑节点时,间隔)的平均数量在节点
这一时期是不到一半的平均数量节点在所有时间。
微软的个人电脑[35]跟踪来自每小时ping在微软公司台式电脑。
Skypesuperpeers[36]跟踪是基于应用层ping每隔30分钟在Skype的superpeer节点网络,近似一组的行为well-provisionedendhosts,因为superpeers可能被选中部分基于带宽可用性[36]。
最后,跟踪努特拉的同行[37]是基于应用层的ping普通的努特拉同行在交汇处的间隔。
我们接下来描述我们如何获得f和从这些痕迹。
对存储系统来说是至关重要的区分永久和瞬态故障(定义IV-A节),因为只有前需要bandwidthintensive替换丢失的冗余。
大多数系统使用超时启发式:
当一个节点没有回应networklevel探测器经过一段时间,它被认为没有永久的。
存储系统的近似行为,我们使用相同的启发式。
节点可用性然后计算平均值(随时间变化)的节点可用的那些都不考虑吗永久的失败。
结果f的值显示在表我,我们有固定的超时t1天。
时间超时降低整体带宽成本[10],[33],但开始的影响耐久性[33]和更容易产生人为的效果在短期(2.5天)努特拉跟踪。
我们只强调上面描述的过程提供了一个估计的f和可能有偏见几种方法。
一些设计[33]再合并数据节点后返回瞬态故障超过了超时,这将减少f。
此外,甚至把结果在选择节点,文件uniform-random节点更可用[31]而不易失败[32]不是吗平均节点。
最后,我们没有占时间需要传输数据到一个节点,在它实际上是不可用。
但是,我们认为这是不可能的,因为我们这些偏见会影响我们的主要结果主要是关心的相对性能我们比较策略。
d.定量结果图5显示了之间的权衡意味着不可用和意味着维护每个策略的带宽部分IV-B使用f的值和IV-C从部分和k=7。
在权衡空间产生可行点通过改变冗余因子r标记点每个曲线突出的一个子集(即可行点。
指出,n是积分)。
图6显示了相对的各种性能策略k=14相似。
8跟踪长度开始意味着#f(天)日期节点(分数每天失败)表我
本文使用的可用性的痕迹。
复制MSR代码混合动力MBR代码理想的擦除
(d)努特拉同事跟踪图5。
Availability-bandwidth权衡与参数k=7来自每个痕迹。
的关键(d)适用