异构分布式存储系统的数据处理方法与流程

文档序号:15394905发布日期:2018-09-08 01:57阅读:226来源:国知局
本发明涉及一种异构分布式存储系统的数据处理方法。
背景技术
::随着计算机网络的发展,网络信息数据量变得越来越大,传统的文件存储系统无法满足高容量,高可靠性,高性能等方面的需求。分布式存储系统因为其良好的可扩展特性以及高可靠性。然而在分布式存储系统中,存储数据的节点是不可靠的。为了能够由不可靠的存储节点提供可靠的存储服务,需要在存储系统中引入冗余。引入冗余最简单的方法就是对原始数据直接备份,直接备份虽然简单但是其存储效率和系统可靠性不高,而通过编码引入冗余的方法可以提高其存储效率。在目前的存储系统中,编码方法一般采用mds码(maximumdistanceseparable最大距离可分离),mds码可以达到存储空间效率的最佳,一个(n,k)mds纠错码需要将一个原始文件分成k个大小相等的模块,并通过线性编码生成n个互不相关的编码模块,由n个节点存储不同的模块,并满足mds属性(n个编码模块中任意k个就可重构原始文件)。这种编码技术在提供有效的网络存储冗余中占有重要的地位,特别适合存储大的文件以及档案数据备份应用。然而,系统节点失效或者文件损耗,系统的冗余度会随着时间而逐渐减小,因此需要一种机制来保证系统的冗余。文献[r.rodriguesandb.liskov,“highavailabilityindhts:erasurecodingvs.replication”,workshoponpeer-to-peersystems(iptps)2005.]中提出的ec码(erasurecodes纠错码),该码在存储开销上是比较有效的,然而支持冗余恢复所需要的通信开销也比较大。为了降低修复过程中所使用的带宽,文献[a.g.dimakis,p.g.godfrey,m.j.wainwright,k.ramchandran“,networkcodingfordistributedstoragesystems”ieeeproc.infocom,anchorage,alaska,may2007.]利用网络编码理论的思想提出了再生码(rgc,regeneratingcodes),rgc码也满足mds码特性。再生码的修复过程中,新节点需要在剩下的存储节点中连接d个存储节点并分别从这d个存储节点中下载β大小的数据,所以rgc码的修复带宽为dβ。而在实际当中很多分布式存储系统是异构的,新节点需要在剩下的存储节点中连接d个存储节点而从这d个存储节点中下载的数据大小是不一样的,并且这d个节点各自的下载代价也是不同的,综上,异构分布式存储系统存在着的修复带宽以及磁盘i/o过高,有较高的下载代价。技术实现要素:本发明为了解决上述问题,提出了一种异构分布式存储系统的数据处理方法,本发明利用在异构情况下再生码和复制方式相结合,不仅能够有效降低修复带宽,还能够有效降低修复过程中的下载代价并伴随着磁盘i/o的降低。为了实现上述目的,本发明采用如下技术方案:一种异构分布式存储系统的数据处理方法,包括以下步骤:将分布式存储系统中的存储节点分为编码修复节点集合和副本修复节点集合两部分,将原始数据编码后放入到多个编码修复节点和副本修复节点组成的存储节点中,依据最大流最小割定理,确定各节点满足重构原始数据文件的基本条件,在该基本条件的限制下,获取尽量低的下载代价,计算得出最小修复带宽点与最小存储量点,完成重构。进一步的,将分布式存储系统中的编码修复节点集合分为两类单元集合,每一类都有不同的下载代价而同一类的节点有相同的下载代价。进一步的,对大小为m的原始数据编码后放入到(n-m+λm)个存储节点,其中(n-m)个编码修复节点,和副本数均为λ的m(m≤k-1)个副本修复节点;每个存储节点存储的数据大小为α;原始数据利用m个副本修复节点和任意(k-m)个编码修复节点来完成重构。进一步的,编码修复节点集合的永久性失效的比例为f1,当编码修复节点集合中的一个节点失效时,新的编码修复节点集合中从第一类单元集合选择d1个有效的存储节点下载数据,从每个节点下载的数据大小为β1,下载代价为c1,从第一类单元集合中择d2个有效的存储节点下载数据,从每个节点下载的数据大小为β2,下载代价为c2,修复带宽γ=d1β1+d2β2,总的下载代价为ct=c1d1β1+c2d2β2,且β1≥β2,同时有β1=k′β2,k′取正整数值。副本修复节点集合中永久性失效的比例为f2,当副本修复节点集合中的一个节点失效时,新的副本修复节点集合从一个存储失效的副本节点下载数据。进一步的,当第一类单元集合中选择的有效存储节点数大于等于存储节点总数时,满足重构原始数据文件的基本条件为:其中,m为原始数据容量,k为存储节点总数,α为每个存储节点存储的数据大小,m为副本修复节点数量。进一步的,当第一类单元集合中选择的有效存储节点数大于等于存储节点总数时,最小修复带宽点为:进一步的,当第一类单元集合中选择的有效存储节点数大于等于存储节点总数时,最小存储量点为:进一步的,当第一类单元集合中选择的有效存储节点数小于存储节点总数时,满足重构原始数据文件的基本条件:进一步的,当第一类单元集合中选择的有效存储节点数小于存储节点总数时,最小修复带宽点为:进一步的,当第一类单元集合中选择的有效存储节点数小于存储节点总数时,最小存储量点为:与现有技术相比,本发明的有益效果为:本发明与现有再生码,存在诸多优势,首先本发明是在异构情况下的更符合实际意义,其次本发明能够带来更好的mbr和msr点,同时本发明相比于之前的研究成果具有更低的下载代价和更低的磁盘io。附图说明构成本申请的一部分的说明书附图用来提供对本申请的进一步理解,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。图1为每个节点的存储容量α和修复某失效节点时的修复带宽γ的关系;图2和图3显示的是本发明方法下msr点的平均修复带宽随着横坐标为β2和β1的比值k′的变化情况;图4为本发明方法下mbr点的平均磁盘i/o随着横坐标为β2和β1的比值k′的变化情况;图5为本发明提出的方法的下载代价与文献之前研究方法下载代价的比值随着m变化的情况;具体实施方式:下面结合附图与实施例对本发明作进一步说明。应该指出,以下详细说明都是例示性的,旨在对本申请提供进一步的说明。除非另有指明,本文使用的所有技术和科学术语具有与本申请所属
技术领域
:的普通技术人员通常理解的相同含义。需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本申请的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在特征、步骤、操作、器件、组件和/或它们的组合。在本发明中,术语如“上”、“下”、“左”、“右”、“前”、“后”、“竖直”、“水平”、“侧”、“底”等指示的方位或位置关系为基于附图所示的方位或位置关系,只是为了便于叙述本发明各部件或元件结构关系而确定的关系词,并非特指本发明中任一部件或元件,不能理解为对本发明的限制。本发明中,术语如“固接”、“相连”、“连接”等应做广义理解,表示可以是固定连接,也可以是一体地连接或可拆卸连接;可以是直接相连,也可以通过中间媒介间接相连。对于本领域的相关科研或技术人员,可以根据具体情况确定上述术语在本发明中的具体含义,不能理解为对本发明的限制。正如
背景技术
:中所述的,在实际当中很多分布式存储系统是异构的,新节点需要在剩下的存储节点中连接d个存储节点而从这d个存储节点中下载的数据大小是不一样的,并且这d个节点各自的下载代价也是不同的。对于这种异构情况下有较高的修复带宽的问题本发明提出了一种在异构情况下再生码和复制方式相结合的方法针对于该方法我们得出了该方法下的最小存储量点和最小修复带宽点。该方法不仅能够有效降低修复带宽,还能够有效降低修复过程中的下载代价并伴随着磁盘i/o的降低。具体的,本发明采用的技术方案,包括:第一步:将分布式存储系统中的存储节点分为两部分,包括编码修复节点{xi},和副本修复节点{yj}。将分布式存储系统中的编码修复节点{xi}分为两类每一类都有不同的下载代价而同一类的节点有相同的下载代价。分类主要可以根据数据来源的不同,例如来自不同的数据中心。具体的,考虑到一个实际的交互数据中心的场景,其包含本地数据中心以及远程数据中心,我们将处在不同数据中心的节点分成两类,当处在不同数据中心的节点失效时,新的节点将会从本地数据中心下载β1bits,从远程数据中心下载β2bits来完成修复,通常从不同数据中心下载数据时的下载代价也是不同的从本地数据中心下载数据时下载代价为c1,从远程数据中心下载数据时下载代价为c2,考虑一个一般情况就是本地数据中心的链路容量大于远程数据中心的链路容量,即有β1=k′β2,其中k′≥1。第二步:对大小为m的原始数据编码后放入到(n-m+λm)个存储节点,其中(n-m)个{xi},和副本数均为λ的m(m≤k-1)个{yj};每个存储节点存储的数据大小为α;原始数据利用m个yj和任意(k-m)个xi(一共为k个存储节点)来完成重构。xi中永久性失效的比例为f1(0<f1<1),当xi中的一个节点失效时,一个新的xi从中选择d1个有效的存储节点下载数据,从每个节点下载的数据大小为β1(β1≤α),下载代价为c1,从中择d2个有效的存储节点下载数据,从每个节点下载的数据大小为β2(β2≤α),下载代价为c2(c2≥c1),修复带宽γ=d1β1+d2β2(α≤γ),总的下载代价为ct=c1d1β1+c2d2β2,本发明当中β1≥β2,同时有β1=k′β2(对于实际情况来说k′应取正整数值);yj中永久性失效的比例为f2(0<f2<1),当yj中的一个节点失效时,一个新的yj从一个存储失效的副本节点下载数据。作为一种优选方式,其中f1,f2的选取参照文献[a.g.dimakis,p.g.godfrey,m.j.wainwright,k.ramchandran“,networkcodingfordistributedstoragesystems”ieeeproc.infocom,anchorage,alaska,may2007.]中的table1。当然,在其他实施例中也可以选用其他选取方式。修复带宽为α,n、m、λ、k、d1、d2均为非负整数,α、β1、β2均为非负实数,对于mbr和msr的总的存储容量s=[n+(λ-1)m]α,对于平均磁盘i/o为f1(n-m)dα+f2λmα,对于平均修复带宽为f1(n-m)γ+f2λmα。为了更好的说明如何获得更低的下载代价本发明将分为d1≥k和d1<k两种情况加以说明。第三步:在d1≥k的情况下,依据最大流最小割定理,如果分割信源和信宿的最小割的最小值比原始数据的容量m大,则存在在有限域f的线性网络编码能够使得信宿还原原始数据。根据该定理本发明得出了d1≥k的情况下满足重构原始数据文件的基本条件:为了方便我们分析(1)式,令bi=(d1-(k-1)+i)β1+d2β2(2)c(α)是一个线性分段函数α的最小值由c(α)≥m决定,让α*定义为α的最小值,则有:β1=k′β2从而可以得出本发明提出的情况下β2和α*的折中关系,以及γ和α*的折中关系。第四步:通过计算得出本发明情况中的最小修复带宽点mbr:第五步:通过计算得出本发明情况中的最小存储量点msr:第六步:作为一种较好的,与现有技术的对比说明,选取部分现有文献,即现有文献1[s.akhlaghi,a.kiani,m.r.ghanavati,“cost-bandwidthtradeoffindistributedstoragesystms”computercommunications2010;33(17):2105-2115,doi:10.1016/j.comcom.2010.07.022]作为比较说明的对象,以突出本发明的方法的优点,但在其他实施方式中,并不限定于此。为了得到本发明方法中d1≥k情况下最小修复带宽点的下载代价比现有文献1方法的下载代价低。我们定义本发明的方法为rrmbr和rrmsr,而文献中的方法为gmbr和gmsr,下载代价的比值为ηmbr和ηmsr。注意到当m=0时,ηmbr=1,当m=2k-1时ρmbr=1。当ρmbr<1时,rrmbr的下载代价是低于gmbr的。所以当0<m<2k-1时,ρmbr<1得到满足,此时本发明中的方法会带来更低的下载代价。注意到当m=0时ρmsr=1想要让ηmsr<0,因此ηmsr(m)必须为减函数。在d1≥k的情况下(d1k′+d2-kk′+k′)k′>0所以本发明中的方法会带来更低的下载代价。第七步:在d1<k的情况下,依据最大流最小割定理,如果分割信源和信宿的最小割的最小值比原始数据的容量m大,则存在在有限域f的线性网络编码能够使得信宿还原原始数据。根据该定理本发明得出了d1<k的情况下满足重构原始数据文件的基本条件:为了方便我们分析(5)式,令h(x,y)=d1+d2-k+x+yk′(6)c(α)是一个线性分段函数α的最小值由c(α)≥m决定,让α*定义为α的最小值,则有其中:g1(i)=i(2d-2k+2m+i+1)g2(i)=(i+1)(2d2+ik′)因此可以计算出β2minβ2min=f2(d1-1)β1=k′β2从而可以得出本发明提出的情况下β2和α*的折中关系,以及γ和α*的折中关系。第八步:通过计算得出本发明情况中的最小修复带宽点mbr第九步:通过计算得出本发明情况中的最小存储量点msr第十步:为了得到本发明方法中d1<k情况下最小修复带宽点的下载代价比现有文献1方法的下载代价低,我们定义本发明的方法为rrmbr和rrmsr,而文献中的方法为gmbr和gmsr,下载代价的比值为ηmbr和ηmsr。对于式(12)通过分析ηmbr恒小于1,故本方法的下载代价比文献现有文献1的方法的下载代价低,对于式(13)通过分析当0<m<2k-1-d时ηmbr小于1,故只要满足上述条件本方法的下载代价比现有文献1中所提出的方法的下载代价低。为了进一步的验证本发明提出的方案,可以使用matlab软件进行仿真实验。当然,本领域技术人员可以使用其他软件来进行仿真实验。在本次实验中,假设我们的参数模型为(n,k,k′,d1,d2)=(15,10,2,11,3)。图1显示的是每个节点的存储容量α和修复某失效节点时的修复带宽γ的关系。当m=0时其为现有文献1里的方法,由图1可以看出在m满足实际情况的取值范围内,随着m的增大会得到更好的mbr点和msr点。图2和图3显示的是本发明方法下msr点的平均修复带宽随着横坐标为β2和β1的比值k′的变化情况,从图2可以看出,当m=0时为传统方案,随着m的增大平均修复带宽会有直观的减少。从图3可以看出随着副本数λ的增大,平均修复带宽会得到一定的升高因此副本数λ应取得较小的值取得1较为适宜。图4显示的是本发明方法下mbr点的平均磁盘i/o随着横坐标为β2和β1的比值k′的变化情况,可以看出随着m的增大平均磁盘i/o得到有效的降低。图5显示的是本发明提出的方法的下载代价与文献之前研究方法下载代价的比值随着m变化的情况,可以看出当m取值在0到9之间本发明方法有着更低的下载代价当m取到4时本发明的下载代价得到最低。综上,可以看出,本发明与现有方法来说存在诸多优势,首先本发明是在异构情况下的更符合实际意义,其次本发明能够带来更好的mbr和msr点,同时本发明相比于之前的研究成果具有更低的下载代价和更低的磁盘io。以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。上述虽然结合附图对本发明的具体实施方式进行了描述,但并非对本发明保护范围的限制,所属领域技术人员应该明白,在本发明的技术方案的基础上,本领域技术人员不需要付出创造性劳动即可做出的各种修改或变形仍在本发明的保护范围以内。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1