一种基于云计算平台的容灾存储方法

文档序号:7855236阅读:263来源:国知局
专利名称:一种基于云计算平台的容灾存储方法
技术领域
本发明是一种基于云计算平台的容灾存储方法,主要用于保障集群中数据的可靠性和安全性。属于分布式计算和云计算领域。
背景技术
随着Internet网络技术的发展和计算机技术的不断提高,网络中传输和处理的数据的能力直线增长。人们希望获得一种直接、便捷的计算处理方式,不需要安装应用软件,只要连接互联网,就可以利用连接在网络中的空闲的计算机资源进行任务处理。在此背景之下,云计算应运而生,所谓云计算,就是通过计算机网络去连接由大量服务器、存储设备集群构成的云计算平台,来获取远程客户端所需要的服务。而云计算服务商则是将一项复杂的运算任务分成若干个部分,通过分布在计算机网络中的计算机协同合 作,最终将运算结果传输到客户端,从而实现个人数据在远程的计算资源集群的运算。云存储的概念与云计算类似,它是指通过集群应用、网格技术或分布式文件系统等功能,将网络中大量各种不同类型的存储设备通过应用软件集合起来协同工作,共同对外提供按用户需求的数据存储和业务访问功能的一个系统。云存储对用户来讲,不是指某一个具体的设备,而是指一个由许许多多个存储设备和服务器所构成的集合体。使用者使用云存储,并不是使用某一个存储设备,而是使用整个云存储系统带来的一种数据访问服务。所以严格来讲,云存储不是存储,而是一种服务。总之,云存储的核心是应用软件与存储设备相结合,通过应用软件来实现存储设备向存储服务的转变。现有的网络带宽、存储数据的可靠性和安全性,这些是目前限制云储存技术走向大众化的关键因素。通过什么样的存储模型,可以在现有的网络带宽下,将数据比较快速的上传到云存储服务器,并可以保证数据的可靠性和安全性,这个问题是当今比较热门的一个话题,也吸引了很多技术人员来进一步的探索。目前,为了保障存储数据的可靠性和安全性,主流的做法是将数据进行全副本备份,在各个副本部署到不同的节点,来避免数据因为服务器故障或自然灾害带来灾难性的后果。但上述做法,在保障了数据可靠性和安全性的同时,也带来了复制耗时过长的问题,且复制中可能存在节点失效,通过对这些问题的研究,本发明提出了一种容灾存储模型,在兼顾这些问题的同时也可以很好的保障数据的高可靠性和安全性。

发明内容
技术问题云存储中为了保证存储的数据具有较高的可靠性,往往会采用副本容灾机制,这样可以保证节点在灾难发生时进行有效恢复,但在部署时,由于现今网络带宽的限制,速度往往比较慢;与此同时,由于节点数据存储量较大,当节点发生灾难时,从一个节点进行数据恢复速度较慢,导致在数据恢复期备份节点发生失效的概率较大,针对这些问题,本发明提出了一种基于云计算的容灾存储模型。
技术方案本发明是一种容灾存储模型,在部署时可以降低对网络带宽和节点存储容量的要求;同时,当P个数据节点同时出现故障时,仍能高效完整地实现数据的恢复,保障了数据的可靠性。其原理是当用户上传的数据比较大时,先将数据进行一定程度的分害I],再将分割后的数据块交叉存储到数据节点上。运用这种方式实现的存储,允许节点集群中P个节点同时出现故障,即在P个数据节点同时出现故障的情况下,仍可以保证用户数据的完整性,且恢复速度快。其中P为一小于数据节点数目的常数。该方法的主要步骤如下
步骤I. 根据设计要求和系统性能,确定副本节点数n同时确定用户数据文件大小M的阀值g,其中阀值G将来用于确定副本复制方案;步骤2.计算用户数据文件大小If,当Af爾时执行步骤3,否则执行步骤4 ;
步骤3.将数据复制■份,在每个节点上各存储一份完整的数据副本和其校验和; 步骤4.根据数据节点个数将整个数据文件分割为相同大小的份;
步骤5.将每一份数据再分割为相同大小的£■份,其中£■为一用户设定参数,分割后每一份数据大小为_,其大小可通过式(I)来计算
M
'(I)
步骤6.将分割的f份数据平均分配到■个节点上,则每个节点存储
份数据,称这些数据为节点的本地数据注表示本地数据,1^表示节点f的本地数据;
步骤7.将节点彳存储的本地数据块进行逻辑组划分,即将£■个数据划为一组,并将划分后的组进行编号;
步骤8.由步骤6可知,一个节点本地数据可以划分的逻辑组数为个,令逻辑组
为Gf(CI <i<n-U<j<n-2),令CJg表示节点Af j的所有逻辑组,¢5表示当前逻辑组;
步骤9.令刨除节点Afi后的所有参与存储的节点集合为剩余节点集合,找出每个节点
的剩余节点集合,即式(2)
n~2H-I
U^'= U njI J<J;
J=O j=o,j*i= n j = j-l j >iJ
步骤10.将节点JVi的数据(Ii存储到刨除Afi的其他(計I)个节点对上,即G P灣,并满足式p),
r I *一、) — 2,.
UwJw=(e + C^-l))niod(.^-l);^ <n-l\
Je = O(3)
其中:P为指定的常数,表不存储到。
有益效果本发明提出了一种基于云计算平台的容灾存储模型,较目前主流的全副本放置的容灾存储模型而言,该模型主要优势在于当数据节点中某几个数据节点同时出现故障时,仍能很好很快地实现数据的恢复,极好地保障了数据的完整性;与此同时,由于在数据节点上放置的并不是完整的副本,因此,无论是刚开始的副本放置还是出现故障后的数据恢复,该模型都具有较快的速度,对网络带宽的要求也更低,这些都进一步保障了数据的高可靠性。最后,该模型在数据节点存储空间的利用方面也有很大的优势。下面给出具体的说明
当用户需要上传数据到云存储服务器时,传统的副本放置模型会根据需要放置的节点个数,对用户的数据进行完全复制,并分别放置到各个节点。该模型对网络带宽、节点容量都有比较高的要求,而且在数据节点出现故障后,对数据的恢复比较慢,在恢复期间如果再有副本节点发生故障,就无法保障数据的完整性。运用本发明中的容灾存储模型,在用户上传数据时先对用户需要上传的数据进行 分析,如果数据过大,则会采用交叉不完全副本存储方式,如果数据不大,则运用传统的全副本存储方式。这种容灾存储模型,很大程度上降低了对节点存储容量和网络带宽的要求,此外最重要的是这种存储模式,可以保障在某几个数据节点同时出现故障的情况下,仍能较快地实现数据的恢复,保障了数据的可靠性。


图I总体架构图。图2是基于云计算平台的容灾存储模型的流程图。
具体实施例方式本发明的基于云计算平台的容灾存储方法在某几个数据节点同时出现故障的情况下,仍能很快很好地实现数据的恢复,保障数据的可靠性,其步骤主要如下
步骤I.根据设计要求和系统性能,确定副本节点数%,同时确定用户数据文件大小M的阀值G,其中阀值g将来用于确定副本复制方案;
步骤2.计算用户数据文件大小M,当Kg时执行步骤3,否则执行步骤4;
步骤3.将数据复制_^份,在每个节点上各存储一份完整的数据副本和其校验和;
步骤4.根据数据节点个数I3,将整个数据文件分割为相同大小的》( — I)份;
步骤5.将每一份数据再分割为相同大小的£ 份,其中S为一用户设定参数,分割后每一份数据大小为■,其大小可通过式I: I来计算
M
步骤6.将分割的》( -1) £ 份数据平均分配到■个节点上,则每个节点存储j) -1)e份数据,称这些数据为节点JVi的本地数据。注表示本地数据,示节点^的本地数据步骤7.将节点存储的本地数据块进行逻辑组划分,即将£■个数据划为一组,并将划分后的组进行编号;
步骤8.由步骤6可知,一个节点本地数据可以划分的逻辑组数为I)个,令逻辑组
为 令示节点3/芦所有逻辑组,(j表示当前逻辑组;
步骤9.令刨除节点Jlfi后的所有参与存储的节点集合为剩余节点集合,找出每个节点的剩余节点集合,即式(2)
权利要求
1.一种基于云计算平台的容灾存储方法,其特征在于该方法在某几个数据节点同时出现故障的情况下,仍能很快很好地实现数据的恢复,保障数据的可靠性,其步骤主要如下步骤I. 根据设计要求和系统性能,确定副本节点数n同时确定用户数 据文件大小if的阀值g,其中阀值g将来用于确定副本复制方案;步骤2.计算用户数据文件大小Jf,当M <Q时执行步骤3,否则执行步骤4 ; 步骤3.将数据复制■份,在每个节点上各存储一份完整的数据副本和其校验和; 步骤4.根据数据节点个数将整个数据文件分割为相同大小的份; 步骤5.将每一份数据再分割为相同大小的£*份,其中£*为一用户设定参数,分割后每一份数据大小为■,其大小可通过式I: I,)来计算M # ⑴步骤6.将分割的 1) f份数据平均分配到■个节点上,则每个节点存储(/I-1)f份数据,称这些数据为节点的本地数据;注£表示本地数据,!^表示节点f的本地数据; 步骤7.将节点存储的本地数据块进行逻辑组划分,即将£■个数据划为一组,并将划分后的组进行编号; 步骤8.由步骤6可知,一个节点本地数据可以划分的逻辑组数为I)个,令逻辑组为續<! -1,0玄片. - 2),令(3』表示节点夏芦所有逻辑组,表示当前逻辑组; 步骤9.令刨除节点Jlfi后的所有参与存储的节点集合为剩余节点集合,找出每个节点的剩余节点集合’即式(2) n-2n~lI Ja^' = I I .¥I y ji:0i ~ Jj>i) 步骤10.将节点JVi的数据CJi存储到刨除的其他1)个节点胃上,即G 0两,并满足式丨:/'), f w— 、、n — 2>4对) {w=(e + {p-l))mod(n-l%p <n-l)Kr=,Je = 0(3) 其中为指定的常数,表不存储到。
全文摘要
本发明是一种基于云计算平台的容灾存储模型,该模型,在部署时可以降低对网络带宽和节点存储容量的要求;同时,当数据节点中P个数据节点同时出现故障时,仍能很好很快地实现数据的恢复,极好地保障了数据的完整性。其原理是当用户上传的数据比较大时,先将数据进行一定程度的分割,再将分割后的数据块交叉存储在数据节点上。运用这种方式实现的存储,允许节点集群中P个节点同时出现故障,即在集群中P个节点同时出现故障的情况下,仍可以保证用户数据的完整性,同时恢复的速度比目前主流的全副本放置模型要快许多。其中P为一小于节点数目的常数。
文档编号H04L29/08GK102780769SQ20121022922
公开日2012年11月14日 申请日期2012年7月4日 优先权日2012年7月4日
发明者付雄, 孙力娟, 季一木, 戴华, 王义波, 王汝传, 韩志杰 申请人:南京邮电大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1