一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种磁盘阵列的回拷方法、系统及相关装置与流程

2022-05-11 16:26:13 来源:中国专利 TAG:
1.本技术涉及电子设备存储领域,特别涉及一种磁盘阵列的回拷方法、系统及相关装置。
背景技术
::2.raid是一种虚拟化技术,它将多个物理磁盘虚拟成一个大容量的逻辑磁盘提供给外部主机。为了保证逻辑磁盘的高性能和可靠性,raid在发展过程中,采用了镜像冗余、数据条带、数据校验等关键技术。而raid回拷管理也是保证阵列性能的一种方法。现有的常见回拷多数都是全盘回拷,这将用户未使用的部分也包括在内,一旦系统发生异常,而当前阵列仍旧有任务处于回拷中,将导致回拷进度丢失,当系统恢复后,回拷进度从零开始,极大地影响回拷效率。技术实现要素:3.本技术的目的是提供一种磁盘阵列的回拷方法、回拷系统、计算机可读存储介质和服务器,能够确保磁盘阵列稳定回拷。4.为解决上述技术问题,本技术提供一种磁盘阵列的回拷方法,具体技术方案如下:5.接收回拷指令,获取所述回拷指令对应的位图信息;所述位图信息包含所述磁盘阵列中以条带为单位的标记信息;6.将成功回拷的位图信息按照预设长度切割得到若干位图信息组,取每个所述位图信息组的首位和末位进行校验;7.若校验成功,以当前位图信息执行回拷;8.若校验失败,重置回拷进度并重新执行回拷。9.可选的,取每个所述位图信息组的首位和末位进行校验之前,还包括:10.按照所述磁盘阵列的类型确定校验方式;11.则取每个所述位图信息组的首位和末位进行校验包括:12.按照所述校验方式对每个所述位图信息组的首位和末位进行校验。13.可选的,还包括:14.在所述磁盘阵列上线并进行io写操作时,以条带为单位标记为初始值,得到所述位图信息。15.可选的,还包括:16.当检测到所述条带对应的删除操作时,将所述标记由初始值变更为预设值。17.可选的,得到所述位图信息之后,还包括:18.将所述位图信息存于预设非易失性内存;19.则获取所述回拷指令对应的位图信息包括:20.从所述预设非易失性内存获取所述回拷指令对应的位图信息。21.可选的,还包括:22.将所述位图信息同步至各节点,以同步各所述节点对应的阵列回拷进度。23.可选的,按照所述磁盘阵列的类型确定校验方式包括:24.若所述磁盘阵列为raid5,则获取校验数据p的数据进行校验;25.若所述磁盘阵列为raid6,则获取校验数据p和校验数据q的数据进行校验。26.本技术还提供一种磁盘阵列的回拷系统,包括:27.位图信息获取模块,用于接收回拷指令,获取所述回拷指令对应的位图信息;所述位图信息包含所述磁盘阵列中以条带为单位的标记信息;28.校验模块,用于将成功回拷的位图信息按照预设长度切割得到若干位图信息组,取每个所述位图信息组的首位和末位进行校验;29.继续回拷模块,用于所述校验模块校验成功时,以当前位图信息执行回拷;30.重新回拷模块,用于所述校验模块校验失败时,重置回拷进度并重新执行回拷。31.本技术还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的方法的步骤。32.本技术还提供一种服务器,包括存储器和处理器,所述存储器中存有计算机程序,所述处理器调用所述存储器中的计算机程序时实现如上所述的方法的步骤。33.本技术提供一种磁盘阵列的回拷方法,包括:接收回拷指令,获取所述回拷指令对应的位图信息;所述位图信息包含所述磁盘阵列中以条带为单位的标记信息;将成功回拷的位图信息按照预设长度切割得到若干位图信息组,取每个所述位图信息组的首位和末位进行校验;若校验成功,以当前位图信息执行回拷;若校验失败,重置回拷进度并重新执行回拷。34.本技术在执行回拷时,参考磁盘阵列对应的位图信息,根据位图信息执行回拷,通过位图信息记录回拷进度,即使磁盘阵列发生异常,在异常后也可根据位图信息继续执行回拷,保证在不影响现有的恢复的前提下,确保回拷的稳定恢复,提高回拷效率。35.本技术还提供一种磁盘阵列的回拷系统、计算机可读存储介质和服务器,具有上述有益效果,此处不再赘述。附图说明36.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。37.图1为本技术实施例所提供的一种磁盘阵列的回拷方法的流程图;38.图2为本技术实施例所提供的位图信息切割示意图;39.图3为本技术实施例所提供的一种磁盘阵列的回拷系统的结构示意图。具体实施方式40.为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。41.请参考图1,图1为本技术实施例所提供的一种磁盘阵列的回拷方法的流程图,该方法包括:42.s101:接收回拷指令,获取所述回拷指令对应的位图信息;所述位图信息包含所述磁盘阵列中以条带为单位的标记信息;43.本步骤旨在接收回拷指令,并获取相应的位图信息。容易理解的是,本步骤默认在执行本步骤之前,已经建立该磁盘阵列对应的位图信息。而本实施例对于如何构建位图信息不作限定。一种可选的执行方式,可以在磁盘阵列上线并进行io写操作时,以条带为单位标记为初始值,得到位图信息。通常可以在磁盘脱离,重新上线后可以创建位图信息。在创建位图信息时,可以根据磁盘阵列的类型创建。例如针对空间分布以条带组为基本单位的分布式阵列,位图信息应以条带为单位进行标记。而针对其他类型的磁盘阵列,可以适当变更位图信息的基本标记单位。44.还需要注意的是,对于位图信息,当检测到条带对应的删除操作时,将标记由初始值变更为预设值。在此对于位图信息的初始值和预设值不做具体限定,其实质而两种不同的状态值,因为可以表示不同状态值的标识方式均可。例如可以设初始值为1、预设值为0,或者分别初始值为y、预设值为n等等。以初始值为1、预设值为0为例,一种可选的回拷可以如下:45.在创建位图信息的时候初始化成1,当当前位置的数据回拷结束,在此位置修改位图信息标记为0,此时一致扫描下去,直至位图信息上所有位置都是0则认为回拷结束。46.而位图信息占用的内存空间极小,举例而言,若用户在创建raid的时候输入一个条带的大小,设256k,同时设用户的磁盘大小是1t,虽然是1t实际能用的空间实际为893.8gb。47.位图信息的计算:893.8gb/256kb≈table最大条目37dc0a,37dc0a为16进制,则1个1t的硬盘映射的位图信息大小是37dc0ax2(个字节)≈7kb。可见,用位图信息来进行标记,能够有效减少内存的使用。48.此外,为了确保位图信息不易丢失,在得到位图信息之后,可将位图信息存于预设非易失性内存,则在执行本步骤时,可以从预设非易失性内存获取所述回拷指令对应的位图信息。在此对于采用何种预设非易失性内存不作限定。49.s102:将成功回拷的位图信息按照预设长度切割得到若干位图信息组,取每个所述位图信息组的首位和末位进行校验;若校验成功,进入s103;若校验失败,进入s104;50.本步骤旨在对位图信息进行校验,在磁盘阵列异常时,先确认当前上线的磁盘是否是脱离或者丢失的磁盘,而显然对磁盘阵列进行全盘校验极其耗时费力,为此,本技术把位图信息中已经成功回拷的部分按照一定的长度进行分割,然后获取每一组的首尾进行校验,即每个位图信息组的首位和末位。每个位图信息组的长度依赖总位图信息长度,通常将位图信息组长度不大于位图信息总大小的1/1000,从而减少cpu的消耗,每一组校验两次。此外,校验方式因创建的raid方式而改变,即按照磁盘阵列的类型确定校验方式:51.若磁盘阵列为raid5,则获取校验数据p的数据进行校验;52.若磁盘阵列为raid6,则获取校验数据p和校验数据q的数据进行校验。53.根据校验结果执行后续步骤,若校验成功,说明当前磁盘为之前在线的磁盘,则进入步骤s103,否则进入s104。54.举例而言,参见图2,图2为本技术实施例所提供的位图信息切割示意图,图2中每个位图组包含五个位图单位,则在校验时校验每个位图组中的第一位和第五位,从而根据校验结果选择执行步骤s103或者s104.55.s103:以当前位图信息执行回拷;56.s104:重置回拷进度并重新执行回拷。57.根据以上的校验逻辑,如果校验成功,则认为当前的位图信息是可用的,继续以当前的位图信息进行回拷来处理,这个时候确保了回拷进度的能够继续保持,减少了重复回拷带来的性能压力。如果校验失败,则当前的位图信息确认不可用,则将回拷进度进行重设,当前位图信息的内容重设成1,此时认为回拷需要从头开始。58.本技术实施例在执行回拷时,参考磁盘阵列对应的位图信息,根据位图信息执行回拷,通过位图信息记录回拷进度,即使磁盘阵列发生异常,在异常后也可根据位图信息继续执行回拷,保证在不影响现有的恢复的前提下,确保回拷的稳定恢复,提高回拷效率。59.基于上述实施例,作为优选的实施例,当系统恢复后,从非易失性内存中获取位图信息,并将位图信息同步到各个node节点中,确保在整个系统的位图信息统一,具以双控两个节点为例,可以将位图信息同步至各节点,以同步各所述节点对应的阵列回拷进度。60.具体的,每当节点上线时,需要其读取内存中的位图信息并进行位图信息的同步,同时执行磁盘阵列的恢复,该过程过程均依赖于当前位图信息中的回拷进度,从而使得所有节点的回拷进度同步。61.这种情况下确保回拷的位图信息能够保证节点之间的一致,防止因一端节点出现异常导致位图信息丢失。62.下面对本技术实施例提供的一种磁盘阵列的回拷系统进行介绍,下文描述的磁盘阵列的回拷系统与上文描述的磁盘阵列的回拷方法可相互对应参照。63.参见图3,图3为本技术实施例所提供的一种磁盘阵列的回拷系统的结构示意图,本技术还提供一种磁盘阵列的回拷系统,包括:64.位图信息获取模块,用于接收回拷指令,获取所述回拷指令对应的位图信息;所述位图信息包含所述磁盘阵列中以条带为单位的标记信息;65.校验模块,用于将成功回拷的位图信息按照预设长度切割得到若干位图信息组,取每个所述位图信息组的首位和末位进行校验;66.继续回拷模块,用于所述校验模块校验成功时,以当前位图信息执行回拷;67.重新回拷模块,用于所述校验模块校验失败时,重置回拷进度并重新执行回拷。68.基于上述实施例,作为优选的实施例,还包括:69.校验方式确定模块,用于按照所述磁盘阵列的类型确定校验方式;70.基于上述实施例,作为优选的实施例,还包括:71.位图信息创建模块,用于在所述磁盘阵列上线并进行io写操作时,以条带为单位标记为初始值,得到所述位图信息。72.基于上述实施例,作为优选的实施例,还包括:73.位图操作模块,用于当检测到所述条带对应的删除操作时,将所述标记由初始值变更为预设值。74.基于上述实施例,作为优选的实施例,还包括:75.位图存储模块,用于将所述位图信息存于预设非易失性内存;76.则位图信息获取模块为用于从所述预设非易失性内存获取所述回拷指令对应的位图信息的模块。77.基于上述实施例,作为优选的实施例,还包括:78.信息同步模块,用于将所述位图信息同步至各节点,以同步各所述节点对应的阵列回拷进度。79.本技术还提供了一种计算机可读存储介质,其上存有计算机程序,该计算机程序被执行时可以实现上述实施例所提供的步骤。该存储介质可以包括:u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。80.本技术还提供了一种服务器,可以包括存储器和处理器,所述存储器中存有计算机程序,所述处理器调用所述存储器中的计算机程序时,可以实现上述实施例所提供的步骤。当然所述服务器还可以包括各种网络接口,电源等组件。81.说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例提供的系统而言,由于其与实施例提供的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。82.本文中应用了具体个例对本技术的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本技术的方法及其核心思想。应当指出,对于本
技术领域
:的普通技术人员来说,在不脱离本技术原理的前提下,还可以对本技术进行若干改进和修饰,这些改进和修饰也落入本技术权利要求的保护范围内。83.还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。当前第1页12当前第1页12
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献