存储系统的镜像卷修复方法、装置、系统及可读存储介质与流程

文档序号:17287722发布日期:2019-04-03 03:42阅读:573来源:国知局
存储系统的镜像卷修复方法、装置、系统及可读存储介质与流程

本发明实施例涉及存储系统技术领域,特别是涉及一种存储系统的镜像卷修复方法、装置、系统及计算机可读存储介质。



背景技术:

在存储系统中,镜像是一种常用的数据备份方法。镜像卷是由两个卷(主卷和辅卷)组成的,并且两个卷保持实时同步,当执行写操作时,会同时往两个卷中写入数据。但是,由于介质错误等原因,镜像卷的两个卷中所存储的数据可能会出现差异,导致数据备份的一致性、完整性和可靠性降低。

鉴于此,如何提供一种解决上述技术问题的存储系统的镜像卷修复方法、装置、系统及计算机可读存储介质成为本领域技术人员需要解决的问题。



技术实现要素:

本发明实施例的目的是提供一种存储系统的镜像卷修复方法、装置、系统及计算机可读存储介质,在使用过程中能够使镜像卷中的两个卷的数据保持一致,提高数据备份的一致性、完整性和可靠性。

为解决上述技术问题,本发明实施例提供了一种存储系统的镜像卷修复方法,包括:

对镜像卷中两个卷的状态进行检测,当其中一个卷的状态异常时,确定出正常卷和异常卷;

按照预设划分方式将正常卷划分为n个第一区域,将异常卷划分为n个第二区域,各个所述第一区域和各个所述第二区域一一对应,所述n不小于2;

判断各个所述第一区域中的数据是否与相应的第二区域中的数据一致,若否,则采用目标第一区域中的数据覆盖目标第二区域中的数据;其中,将数据不一致的第一区域和相应的第二区域分别作为所述目标第一区域和所述目标第二区域。

可选的,所述判断各个所述第一区域中的数据是否与相应的第二区域中的数据一致,若否,则采用目标第一区域中的数据覆盖目标第二区域中的数据的过程包括:

判断当前第一区域中的数据是否与相应的第二区域中的数据一致;

若否,则将所述当前第一区域作为目标第一区域,将所述第二区域作为目标第二区域,并采用所述目标第一区域中的数据覆盖相应的目标第二区域中的数据;

若是,则将下一个第一区域作为所述当前第一区域,并返回执行所述判断当前第一区域中的数据是否与相应的第二区域中的数据一致的步骤,直至所有的第一区域判断完毕。

可选的,所述判断各个所述第一区域中的数据是否与相应的第二区域中的数据一致的过程为:

将每个所述第一区域的md5值分别与相应的第二区域的md5值进行比较;

判断每个所述第一区域的md5值是否与相应的第二区域的md5相等,若是,则所述第一区域的数据与相应的第二区域的数据一致,若否,则所述第一区域的数据与相应的第二区域的数据不一致。

可选的,还包括:

记录所述目标第一区域的地址信息和所述目标第二区域的地址信息。

可选的,所述第一区域和所述第二区域均为扇形区域。

本发明实施例相应的提供了一种存储系统的镜像卷修复装置,包括:

检测模块,用于对镜像卷中两个卷的状态进行检测,当其中一个卷的状态异常时,确定出正常卷和异常卷;

划分模块,用于按照预设划分方式将正常卷划分为n个第一区域,将异常卷划分为n个第二区域,各个所述第一区域和各个所述第二区域一一对应,所述n不小于2;

判断模块,用于判断各个所述第一区域中的数据是否与相应的第二区域中的数据一致,若否,则触发修复模块;

所述修复模块,用于采用目标第一区域中的数据覆盖目标第二区域中的数据;其中,将数据不一致的第一区域和相应的第二区域分别作为所述目标第一区域和所述目标第二区域。

可选的,所述判断模块包括:

比较单元,用于将每个所述第一区域的md5值分别与相应的第二区域的md5值进行比较;

判断单元,用于判断每个所述第一区域的md5值是否与相应的第二区域的md5相等,若否,则触发所述修复模块。

可选的,还包括:

记录模块,用于记录所述目标第一区域的地址信息和所述目标第二区域的地址信息。

本发明实施例还提供了一种存储系统的镜像卷修复系统,包括:

存储器,用于存储计算机程序;

处理器,用于执行所述计算机程序时实现如上述所述存储系统的镜像卷修复方法的步骤。

本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述所述存储系统的镜像卷修复方法的步骤。

本发明实施例提供了一种存储系统的镜像卷修复方法、装置、系统及计算机可读存储介质,包括:对镜像卷中两个卷的状态进行检测,当其中一个卷的状态异常时,确定出正常卷和异常卷;按照预设划分方式将正常卷划分为n个第一区域,将异常卷划分为n个第二区域,各个第一区域和各个第二区域一一对应,n不小于2;判断各个第一区域中的数据是否与相应的第二区域中的数据一致,若否,则采用目标第一区域中的数据覆盖目标第二区域中的数据;其中,将数据不一致的第一区域和相应的第二区域分别作为目标第一区域和目标第二区域。

可见,本申请中通过对镜像卷中的两个卷的运行状态进行检测,确定出正常卷和异常卷,并且将正常卷和异常卷均划分为n个区域,然后将正常卷中各个第一区域中的数据和异常卷中相应的第二区域中的数据进行比较,当这两个区域的数据不一致时,采用正常卷中的目标第一区域中的数据对异常卷中相应的目标第二区域的数据进行覆盖,从而实现对异常卷中数据的修复,以使镜像卷中的两个卷的数据保持一致,提高数据备份的一致性、完整性和可靠性。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对现有技术和实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例提供的一种存储系统的镜像卷修复方法的流程示意图;

图2为本发明实施例提供的一种卷区域划分示意图;

图3为本发明实施例提供的一种存储系统的镜像卷修复装置的结构示意图。

具体实施方式

本发明实施例提供了一种存储系统的镜像卷修复方法、装置、系统及计算机可读存储介质,在使用过程中能够使镜像卷中的两个卷的数据保持一致,提高数据备份的一致性、完整性和可靠性。

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

请参照图1,图1为本发明实施例提供的一种存储系统的镜像卷修复方法的流程示意图。该方法,包括:

s110:对镜像卷中两个卷的状态进行检测,当其中一个卷的状态异常时,确定出正常卷和异常卷;

需要说明的是,镜像卷中的两个卷的数据是保持实时同步的,在执行写操作时,会同时往两个卷中写入数据,但是可能会由于介质错误等原因造成两个卷中的数据存在差异,此时就需要确定出差异数据,并采用没有出现问题的卷中的数据对出现错误的卷中的相应数据进行修复。

具体的,本申请可以通过对两个卷的状态进行检测,并且在其中一个卷出现异常,另一个卷没有出现异常时,对两个卷进行标记,确定出正常卷和异常卷,以便后续再确定出异常卷中的数据出现异常时,采用正常卷中的数据对异常卷中的数据进行修复。

s120:按照预设划分方式将正常卷划分为n个第一区域,将异常卷划分为n个第二区域,各个第一区域和各个第二区域一一对应,n不小于2;

具体的,在确定出正常卷和异常卷后,可以将正常卷和异常卷均划分为多个区域,其中,将正常卷划分为多个第一区域,异常卷按照同样的方式划分为多个第二区域,第一区域和第二区域的数量相同,每个第一区域与相应的第二区域的位置、大小和形状也对应相同。其中,第一区域和第二区域的形状为扇形,也即将正常卷和异常卷均划分为多个扇形区域,如图2所示。

s130:判断各个第一区域中的数据是否与相应的第二区域中的数据一致,若否,则进入s140;

可以理解的是,通过对正常卷中的每个第一区域中的数据和异常卷中相应的第二区域中的数据进行比较分析,能够确定出第一区域中的数据与相应的第二区域中的数据是否一致,当某个第一区域与相应的第二区域中的数据不一致时,说明异常卷中的该第二区域中的数据出现了差异,此时可以将该第一区域作为目标第一区域,将相应的第二区域作为目标第二区域。

s140:采用目标第一区域中的数据覆盖目标第二区域中的数据;其中,将数据不一致的第一区域和相应的第二区域分别作为目标第一区域和目标第二区域。

具体的,由于正常卷中的数据为正确的数据,所以可以采用目标第一区域中的数据对相应的目标第二区域中的数据进行覆盖,从而实现对目标第二数据中的数据的修复。

本申请中将正常卷和异常卷均划分为多个区域不仅能够提高比较速度,而且有利于准确确定出异常卷中的哪一块数据出了问题,并且在确定出出现异常的目标第二区域后,只需要采用相应的目标第一区域中的数据对该目标第二区域中的数据进行覆盖即可实现度异常卷中的出现异常的数据进行修复,数据拷贝量较少,修复速度快。

进一步的,上述s130和s140中判断各个第一区域中的数据是否与相应的第二区域中的数据一致,若否,则采用目标第一区域中的数据覆盖目标第二区域中的数据的过程包括:

判断当前第一区域中的数据是否与相应的第二区域中的数据一致;

若否,则将当前第一区域作为目标第一区域,将第二区域作为目标第二区域,并采用目标第一区域中的数据覆盖相应的目标第二区域中的数据;

若是,则将下一个第一区域作为当前第一区域,并返回执行判断当前第一区域中的数据是否与相应的第二区域中的数据一致的步骤,直至所有的第一区域判断完毕。

可以理解的是,在划分好区域后,可以从任意位置开始对当前第一区域和异常卷中相应的第二区域中的数据比较分析,如果当前的第一区域和相应的第二区域中的数据一致,则继续判断下一个第一区域和相应的第二区域中的数据是否一致,若当前第一区域和相应的第二区域中的数据不一致,则采用当前第一区域(目标第一区域)中的数据对相应的第二区域(目标第二区域)中的数据进行覆盖,然后再继续判断下一个第一区域和相应的第二区域中的数据是否一致,直至将所有的区域比较完毕。

当然,在具体实现时也可以在对第一区域和相应的第二区域中的数据进行比较后,当数据不一致时记录下目标第一区域和相应的目标第二区域的地址信息,并当所有的第一区域和相应的第二区域均比较完毕后,依据所记录的各个数据不一致的目标第一区域和相应的目标第二区域的地址信息,逐个或同时采用相应的目标第一区域中的数据对相应的目标第二区域中的数据进行覆盖,以对相应的各个目标第二区域中的数据进行修复。

更进一步的,判断各个第一区域中的数据是否与相应的第二区域中的数据一致的过程为:

将每个第一区域的md5值分别与相应的第二区域的md5值进行比较;

判断每个第一区域的md5值是否与相应的第二区域的md5相等,若是,则第一区域的数据与相应的第二区域的数据一致,若否,则第一区域的数据与相应的第二区域的数据不一致。

具体的,为了准确并快速的确定出第一区域中的数据是否与相应的第二区域中的数据一致,可以通过比较第一区域和相应的第二区域的md5值,其中,md5值能够准确的反应出相应区域中的数据信息,若两个区域中的数据一致,则其md5值相同,若不一致,则md5值不相同,从而快速确定出数据不一致的第一区域和相应的第二区域。

进一步的,该方法还包括:

记录目标第一区域的地址信息和目标第二区域的地址信息。

需要说明的是,为了方便管理员对镜像卷进行管理和维护,本实施例中可以将数据不一致的目标第一区域和相应的目标第二区域的地址信息记录下来,以便管理员根据这些地址信息对镜像卷进行维护。

更进一步的,本申请中的第一区域和第二区域均为扇形区域,可以在一定程度上减少扇形区域修复时的数据拷贝量,提高数据修复速度,其中,扇形区域具体大小可以根据实际需要进行确定。

当然,本申请中的第一区域和第二区域还可以为其他的具体形状,本申请不做具体限定。

可见,本申请中通过对镜像卷中的两个卷的运行状态进行检测,确定出正常卷和异常卷,并且将正常卷和异常卷均划分为n个区域,然后将正常卷中各个第一区域中的数据和异常卷中相应的第二区域中的数据进行比较,当这两个区域的数据不一致时,采用正常卷中的目标第一区域中的数据对异常卷中相应的目标第二区域的数据进行覆盖,从而实现对异常卷中数据的修复,以使镜像卷中的两个卷的数据保持一致,提高数据备份的一致性、完整性和可靠性。

在上述实施例的基础上,本发明实施例相应的提供了一种存储系统的镜像卷修复装置,具体请参照图3。该装置包括:

检测模块31,用于对镜像卷中两个卷的状态进行检测,当其中一个卷的状态异常时,确定出正常卷和异常卷;

划分模块32,用于按照预设划分方式将正常卷划分为n个第一区域,将异常卷划分为n个第二区域,各个第一区域和各个第二区域一一对应,n不小于2;

判断模块33,用于判断各个第一区域中的数据是否与相应的第二区域中的数据一致,若否,则触发修复模块34;

修复模块34,用于采用目标第一区域中的数据覆盖目标第二区域中的数据;其中,将数据不一致的第一区域和相应的第二区域分别作为目标第一区域和目标第二区域。

进一步的,判断模块33包括:

比较单元,用于将每个第一区域的md5值分别与相应的第二区域的md5值进行比较;

判断单元,用于判断每个第一区域的md5值是否与相应的第二区域的md5相等,若否,则触发修复模块34。

进一步的,该装置还包括:

记录模块,用于记录目标第一区域的地址信息和目标第二区域的地址信息。

需要说明的是,本实施例中提供的存储系统的镜像卷修复装置具有与上述实施例中提供的存储系统的镜像卷修复方法相同的有益效果,对于本实施例中所涉及到的存储系统的镜像卷修复方法的具体介绍请参照上述实施例,本申请在此不再赘述。

在上述实施例的基础上,本发明实施例还提供了一种存储系统的镜像卷修复系统,该系统包括:

存储器,用于存储计算机程序;

处理器,用于执行计算机程序时实现如上述存储系统的镜像卷修复方法的步骤。

例如,本实施例中的处理器用于实现对镜像卷中两个卷的状态进行检测,当其中一个卷的状态异常时,确定出正常卷和异常卷;按照预设划分方式将正常卷划分为n个第一区域,将异常卷划分为n个第二区域,各个第一区域和各个第二区域一一对应,n不小于2;判断各个第一区域中的数据是否与相应的第二区域中的数据一致,若否,则采用目标第一区域中的数据覆盖目标第二区域中的数据;其中,将数据不一致的第一区域和相应的第二区域分别作为目标第一区域和目标第二区域。

在上述实施例的基础上,本发明实施例还提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上述存储系统的镜像卷修复方法的步骤。

该计算机可读存储介质可以包括:u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。

本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。

还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其他实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1