基于chunk块版本号的分布式块存储系统数据恢复判定方法技术方案

技术编号:16042697 阅读:22 留言:0更新日期:2017-08-20 01:06
本发明专利技术公开了一种基于chunk块版本号的分布式块存储系统数据恢复判定方法,包括以下步骤:chunk块版本号命名方法:根据对卷的操作、对chunk块的第一个blk块和最后一个blk块的写入操作对chunk块版本号命名;异常判断:将该SU上每个chunk块与其所在编码组的chunk块进行版本号的比较以对出现数据异常的chunk块的进行判断;数据恢复:对出现数据异常的chunk块数据进行恢复。该方法以chunk块版本号为主要特征来判定数据是否需要恢复,减少传统分布式块文件系统恢复数据时的数据量。

【技术实现步骤摘要】
基于chunk块版本号的分布式块存储系统数据恢复判定方法
本专利技术涉及分布式块存储系统领域,具体涉及一种基于chunk块版本号的分布式块存储系统数据恢复判定方法。
技术介绍
分布式存储系统是将数据分散存储在多台独立的设备上。分布式存储系统在数据组织处理上有两种模式:块级和文件级,即分布式块存储和分布式文件系统。分布式文件系统,例如Pvfs、Lustre、Ceph、PPFS,一般多个终端用户共同使用单个文件命名空间,这种系统往往比较复杂,并且必须支持所有在分布式环境中的文件系统的相关方案。分布式块存储系统,譬如:Petal、Sheepdog、Parallax、BLAST等,根据分布式环境的特点,利用多点资源,为用户提供基本的块存储服务,具有良好的可靠性、性能并支持弹性扩展。对于分布式块存储系统,SU即StoreUnit,系统级存储单元;在SU中,将其划分成多个大小相等的chunk块;在每个chunk中,又会将其划分为多个大小相等的blk;本质上来讲,这三者为不同粒度的存储单元。现有的SU宕机后又重新上线,采用现有方法则需要对整个SU的数据进行恢复,当SU的数据量大时,其数据恢复量也大,十分耗时。
技术实现思路
本专利技术为了解决上述技术问题提供一种基于chunk块版本号的分布式块存储系统数据恢复判定方法,以chunk块版本号为主要特征来判定数据是否需要恢复,减少传统分布式块文件系统恢复数据时的数据量。本专利技术通过下述技术方案实现:基于chunk块版本号的分布式块存储系统数据恢复判定方法,分布式块存储系统具有多个编码组,每个编码组中有多个SU,每个SU的chunk块都有一个版本号,包括,chunk块版本号命名方法:根据对卷的操作、对chunk块的第一个blk块和最后一个blk块的写入操作对chunk块版本号命名;异常判断:一台SU宕机后又重新上线,且SU能够获取该SU中每个chunk块隶属于的编码组,将该SU上每个chunk块与其所在编码组的chunk块进行版本号的比较以对出现数据异常的chunk块的进行判断;数据恢复:对出现数据异常chunk块数据进行恢复。本方法的原理基于流式数据的读写特性,同一个编码组group中所有的chunk块都同时更新,其版本号在正常情况下保持一致。chunk块的版本号在不断的改变过程中,即可根据chunk块的版本号对系统异常进行判断。通过上述原理即可对异常进行判断,即当同一个编码组中的chunk块版本号不一致即可判定异常,当异常出现时,仅对出现异常的chunk块数据进行恢复即可。每个SU上有多个chunk块,其数据量大,采用现有对整个SU的数据进行恢复的方式,其数据恢复量大,而本方案将恢复量从整个SU降至单个或几个chunk块,恢复的数据量大大减小。作为优选,所述异常判断的方法具体为:若chunk块为该编码组的第一个单元,则将其与所在编码组的第二个单元上的相应chunk块进行版本号的比较;若chunk块不是该编码组的第一个单元,则将其与所在编码组的前一个单元所对应的chunk块进行版本号的比较。采用该异常判定方法,其可有效的提高其异常判定的可靠性。作为优选,所述异常判断的方法具体为:若同一编码组的某一chunk块的版本号大于另一chunk块的版本号,则说明版本号出现不一致问题,系统出现异常,需对另一版本号较小chunk块对应的SU上的数据进行恢复;若同一编码组的某一chunk块的版本号小于另一chunk块的版本号,则需对该chunk块对应的SU上的数据进行恢复。作为优选,所述chunk块版本号命名方法具体为:在创建、删除卷时,对该编码组的所有chunk块的版本号进行重置;在扩展卷时,该卷中原有的chunk块版本号不变,对新分配的chunk块版本号进行重置;在对chunk块的第一个blk块或最后一个blk块进行写入操作时,对该chunk块的版本号进行递增操作。进一步的,所述重置均为置0,所述递增操作的递增量为1。本专利技术与现有技术相比,具有如下的优点和有益效果:本专利技术通过chunk块的版本号来判定数据是否需要恢复,减少传统分布式块文件系统恢复数据时的数据量。具体实施方式为使本专利技术的目的、技术方案和优点更加清楚明白,下面结合实施例,对本专利技术作进一步的详细说明,本专利技术的示意性实施方式及其说明仅用于解释本专利技术,并不作为对本专利技术的限定。实施例1分布式块存储系统具有多个编码组,本方法以编码组为单位,每个编码组中有多个SU,每个SU的chunk块都有一个版本号ver_num,记录这个chunk块被整块覆盖写的次数,这是实现本方法的前置条件,具体的基于chunk块版本号的分布式块存储系统数据恢复判定方法包括以下步骤。chunk块版本号命名方法:根据对卷的操作、对chunk块的第一个blk块和最后一个blk块的写入操作对chunk块版本号命名,具体的:在创建、删除卷时,对该编码组的所有chunk块的版本号进行重置0;在扩展卷时,该卷中原有的chunk块版本号不变,对新分配的chunk块版本号进行重置0;在对chunk块的第一个blk块或最后一个blk块进行写入操作时,对该chunk块的版本号进行递增1操作。由于流式数据的读写特性,同一个编码组group中所有的chunk块都同时更新,其版本号在正常情况下保持一致。chunk块的版本号在不断的改变过程中,即可根据chunk块的版本号对系统异常进行判断。异常判断的方法为当同一个编码组中的chunk块版本号不一致,判定系统出现异常。当某一编码组出现异常,则需确定该编码组中出现错误的SU,以对该SU对应所属该编码组的chunk块上的数据进行恢复。SU能够获取该SU中每个chunk块隶属于哪个编码组,当一台发生故障的SU宕机后又重新上线则进行异常判断步骤,针对出现异常的编码组,对各chunk块版本号大小进行比较,判断需要恢复数据的相应SU的chunk块。异常判断可采用下列方法:若同一编码组的某一chunk块的版本号大于另一chunk块的版本号,则需对另一chunk块对应的SU上的数据进行恢复;若同一编码组的某一chunk块的版本号小于另一chunk块的版本号,则需对该chunk块对应的SU上的数据进行恢复。比如SU1和SU2同在一个编码组中,SU1上的chunk块的版本号为ver1,SU2上的chunk块的版本号为ver2,其数据恢复判定过程具体为:若ver1>ver2,说明SU1上的chunk块数据已被覆盖写,但SU2的chunk块数据没有更新,存在不一致,需要对SU2上的数据进行恢复;若ver1=ver2,说明两个chunk块同步更新,属于正常情况;若ver1<ver2,说明SU2上的chunk块数据已被覆盖写,但SU1的chunk块数据没有更新,存在不一致,需要对SU1上的数据进行恢复。上述的的异常判定方法中版本号的比较属于随机比较,其可能存在可靠性不强的问题,为了提高其判定的可靠性,可采用下述实施方式。具体的,SU上每个chunk块与其所在编码组的chunk块进行版本号的比较,若chunk块为该编码组的第一个单元,则将其与所在编码组的第二个单元上的相应chunk块进行版本好的比较;若chunk块不是该编码组的第一个单元,则将其与所在编本文档来自技高网...

【技术保护点】
基于chunk块版本号的分布式块存储系统数据恢复判定方法,分布式块存储系统具有多个编码组,每个编码组中有多个SU,每个SU的chunk块都有一个版本号,其特征在于,包括,chunk块版本号命名方法:根据对卷的操作、对chunk块的第一个blk块和最后一个blk块的写入操作对chunk块版本号命名;异常判断:一台SU宕机后又重新上线,且SU能够获取该SU中每个chunk块隶属于的编码组,将该SU上每个chunk块与其所在编码组的chunk块进行版本号的比较以对出现数据异常的chunk块的进行判断;数据恢复:对出现数据异常的chunk块数据进行恢复。

【技术特征摘要】
1.基于chunk块版本号的分布式块存储系统数据恢复判定方法,分布式块存储系统具有多个编码组,每个编码组中有多个SU,每个SU的chunk块都有一个版本号,其特征在于,包括,chunk块版本号命名方法:根据对卷的操作、对chunk块的第一个blk块和最后一个blk块的写入操作对chunk块版本号命名;异常判断:一台SU宕机后又重新上线,且SU能够获取该SU中每个chunk块隶属于的编码组,将该SU上每个chunk块与其所在编码组的chunk块进行版本号的比较以对出现数据异常的chunk块的进行判断;数据恢复:对出现数据异常的chunk块数据进行恢复。2.根据权利要求1所述的基于chunk块版本号的分布式块存储系统数据恢复判定方法,其特征在于,所述异常判断的方法具体为:若chunk块为该编码组的第一个单元,则将其与所在编码组的第二个单元上的相应chunk块进行版本好的比较;若chunk块不是该编码组的第一个单元,则将其与所在编码组的前一个单元所对应的chunk块进行版本号的...

【专利技术属性】
技术研发人员:段翰聪闵革勇崔聪祎杨琪詹文翰陈绍斌朱越张帆
申请(专利权)人:电子科技大学
类型:发明
国别省市:四川,51

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

1