容灾异常处理方法、系统、计算机设备和存储介质技术方案

技术编号:35909455 阅读:21 留言:0更新日期:2022-12-10 10:48
本申请涉及一种容灾异常处理方法、系统、计算机设备和存储介质,方法包括:主机执行对主卷的数据读取操作,待主机对主卷的数据读取操作出现数据块读取失败时执行磁盘阵列的镜像操作或者校验操作;待磁盘阵列的镜像操作或者校验操作失败时,从主卷上获取读取失败的数据块,并根据读取失败的数据块确定辅卷上相应的待读取数据块;主卷向辅卷发送对待读取数据块的数据读取指令,通过数据读取指令确定待读取数据块对应的辅卷;将待读取数据块对应的辅卷的修正状态配置为允许可读状态,以获取主卷对辅卷的临时读取权限;对处于允许可读状态的辅卷执行对待读取数据块的数据读取操作,提高了自修复功能,进一步提高了容灾异常处理能力。力。力。

【技术实现步骤摘要】
容灾异常处理方法、系统、计算机设备和存储介质


[0001]本申请涉及数据容灾领域,特别是涉及一种容灾异常处理方法、系统、计算机设备和存储介质。

技术介绍

[0002]在存储系统中,RC(RemoteCopy,远程复制)定义的是卷与卷之间的关系,通常一个卷被指定为主卷,另一个被指定为辅卷。通常主机应用程序将数据写入主卷,不对辅卷运行I/O(Input/Output)操作,虽然数据仅写入到一个卷,但系统会将数据按照远程复制关系拷贝到另一个卷,在灾难恢复时,可使用另一个卷上的拷贝数据作为备份。
[0003]如果主端系统(包括主卷)完全故障,此时会切换到辅端系统(包括辅卷),使用辅端的辅卷给上层主机(或主机集群)提供持续的数据存储业务;如果主卷并未完全故障,可能仅是某一个或多个块(block,数据块)存在数据异常,如果此时上层主机下发读I/O操作,来获取该一个或多个数据块,多次读重试后仍为读超时,此时并不会切换到辅卷进行数据获取,在该状态下会对上层主机返回读失败。针对此场景,存储本身自带阵列层级的镜像或校验,可以从阵列级的镜像读出该一个或多个数据块,或者通过使用的raid5/raid6校验位反向计算出该一个或多个数据块;当阵列层级未有镜像或者同时该一个或多个数据块的校验位也出现错误,此时上层主机读取数据必然会读超时失败,因此会出现上层应用主机读I/O操作失败场景,尤其是底层使用盘已经老化或者HDD丢磁,SSD固态颗粒读写次数过多时,上述场景出现概率会明显增大,严重影响容灾处理效率。

技术实现思路

[0004]基于此,本申请提供一种容灾异常处理方法、系统、计算机设备和存储介质,以提高容灾异常处理能力。
[0005]一方面,提供一种容灾异常处理方法,所述容灾异常处理方法包括:
[0006]主机执行对主卷的数据读取操作,待所述主机对所述主卷的数据读取操作出现数据块读取失败时执行磁盘阵列的镜像操作或者校验操作;
[0007]待所述磁盘阵列的镜像操作或者校验操作失败时,从所述主卷上获取读取失败的数据块,并根据所述读取失败的数据块确定辅卷上相应的待读取数据块;
[0008]所述主卷向所述辅卷发送对所述待读取数据块的数据读取指令,通过所述数据读取指令确定所述待读取数据块对应的所述辅卷;
[0009]将所述待读取数据块对应的所述辅卷的修正状态配置为允许可读状态,以获取所述主卷对所述辅卷的临时读取权限;
[0010]对处于允许可读状态的所述辅卷执行对所述待读取数据块的数据读取操作。
[0011]在其中一个实施例中,所述主卷向所述辅卷发送对所述待读取数据块的数据读取指令前,还包括:
[0012]定义所述辅卷的修正状态,对处于不同修正状态的所述辅卷配置不同的读取权
限;其中,所述修正状态包括所述允许可读状态和所述拒绝可读状态;
[0013]当所述辅卷的修正状态配置为所述允许可读状态时,则允许所述主卷获取对所述辅卷的读取权限,允许执行所述主卷向所述辅卷发起的数据读取操作;
[0014]当所述辅卷的修正状态配置为所述拒绝可读状态时,则拒绝所述主卷获取对所述辅卷的读取权限,拒绝执行所述主卷向所述辅卷发起的数据读取操作。
[0015]在其中一个实施例中,所述根据所述读取失败的数据块确定辅卷上相应的待读取数据块,包括:
[0016]根据所述读取失败的数据块位于所述主卷上的位置信息确定辅卷上相同位置信息处的所述待读取数据块。
[0017]在其中一个实施例中,所述主卷向所述辅卷发送对所述待读取数据块的数据读取指令前,还包括:
[0018]根据位图从所述辅卷上获取所述待读取数据块的标志位状态;
[0019]判断所述待读取数据块的标志位状态;
[0020]若所述待读取数据块的标志位状态为允许可读状态,则将所述待读取数据块位于所述辅卷上的位置信息存储到所述数据读取指令;
[0021]若所述待读取数据块对应的所述辅卷的标志位状态为拒绝可读状态,则向所述主卷返回失败信息。
[0022]在其中一个实施例中,所述主卷向所述辅卷发送对所述待读取数据块的数据读取指令,通过所述数据读取指令确定所述待读取数据块对应的所述辅卷,包括:
[0023]所述主卷向所述辅卷发送所述对所述待读取数据块的数据读取指令,以从所述数据读取指令中获取所述待读取数据块位于所述辅卷上的位置信息;
[0024]根据所述待读取数据块位于所述辅卷上的位置信息确定所述待读取数据块对应的所述辅卷;
[0025]其中,所述待读取数据块位于所述辅卷上。
[0026]在其中一个实施例中,所述对处于允许可读状态的辅卷执行对所述待读取数据块的数据读取操作,包括:
[0027]执行所述主卷对所述待读取数据块的数据读取操作,以获取所述待读取数据块的本体数据和校验数据;
[0028]对所述待读取数据块中的所述校验数据进行校验,待所述校验数据校验通过后将所述待读取数据块返回所述主机,同时将所述待读取数据块保存到所述主卷上相应的位置。
[0029]在其中一个实施例中,对处于允许可读状态的辅卷执行对所述待读取数据块的数据读取操作后,还包括:
[0030]待所述主卷从所述辅卷执行数据读取操作完毕后将所述辅卷的修正状态配置为拒绝可读状态,以关闭所述主卷对所述辅卷的临时读取权限。
[0031]另一方面,提供了一种容灾异常处理系统,所述容灾异常处理系统包括:
[0032]读取操作模块,用于主机执行对主卷的数据读取操作,待所述主机对所述主卷的数据读取操作出现数据块读取失败时执行磁盘阵列的镜像操作或者校验操作,以及对处于允许可读状态的辅卷执行对所述待读取数据块的数据读取操作;
[0033]数据块模块,用于待所述磁盘阵列的镜像操作或者校验操作失败时,从所述主卷上获取读取失败的数据块,并根据所述读取失败的数据块确定辅卷上相应的待读取数据块;
[0034]读取指令模块,用于所述主卷向所述辅卷发送对所述待读取数据块的数据读取指令,通过所述数据读取指令确定所述待读取数据块对应的所述辅卷;
[0035]状态配置模块,用于将所述待读取数据块对应的辅卷的修正状态配置为允许可读状态,以及待所述主卷从所述辅卷执行数据读取操作完毕后将所述辅卷的修正状态配置为拒绝可读状态;
[0036]权限配置模块,用于获取或关闭所述主卷对所述辅卷的临时读取权限。
[0037]再一方面,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现以下步骤:
[0038]主机执行对主卷的数据读取操作,待所述主机对所述主卷的数据读取操作出现数据块读取失败时执行磁盘阵列的镜像操作或者校验操作;
[0039]待所述磁盘阵列的镜像操作或者校验操作失败时,从所述主卷上获取读取失败的数据块,并根据所述读取失败的数据块确定辅卷上相应的待读取数据块;
...

【技术保护点】

【技术特征摘要】
1.一种容灾异常处理方法,其特征在于,所述方法包括:主机执行对主卷的数据读取操作,待所述主机对所述主卷的数据读取操作出现数据块读取失败时执行磁盘阵列的镜像操作或者校验操作;待所述磁盘阵列的镜像操作或者校验操作失败时,从所述主卷上获取读取失败的数据块,并根据所述读取失败的数据块确定辅卷上相应的待读取数据块;所述主卷向所述辅卷发送对所述待读取数据块的数据读取指令,通过所述数据读取指令确定所述待读取数据块对应的所述辅卷;将所述待读取数据块对应的所述辅卷的修正状态配置为允许可读状态,以获取所述主卷对所述辅卷的临时读取权限;对处于允许可读状态的所述辅卷执行对所述待读取数据块的数据读取操作。2.根据权利要求1所述的容灾异常处理方法,其特征在于,所述主卷向所述辅卷发送对所述待读取数据块的数据读取指令前,还包括:定义所述辅卷的修正状态,对处于不同修正状态的所述辅卷配置不同的读取权限;其中,所述修正状态包括所述允许可读状态和拒绝可读状态;当所述辅卷的修正状态配置为所述允许可读状态时,则允许所述主卷获取对所述辅卷的读取权限,允许执行所述主卷向所述辅卷发起的数据读取操作;当所述辅卷的修正状态配置为所述拒绝可读状态时,则拒绝所述主卷获取对所述辅卷的读取权限,拒绝执行所述主卷向所述辅卷发起的数据读取操作。3.根据权利要求1所述的容灾异常处理方法,其特征在于,所述根据所述读取失败的数据块确定辅卷上相应的待读取数据块,包括:根据所述读取失败的数据块位于所述主卷上的位置信息确定辅卷上相同位置信息处的所述待读取数据块。4.根据权利要求2所述的容灾异常处理方法,其特征在于,所述主卷向所述辅卷发送对所述待读取数据块的数据读取指令前,还包括:根据位图从所述辅卷上获取所述待读取数据块的标志位状态;判断所述待读取数据块的标志位状态;若所述待读取数据块的标志位状态为已同步状态,则将所述待读取数据块位于所述辅卷上的位置信息存储到所述数据读取指令;若所述待读取数据块对应的所述辅卷的标志位状态为未同步状态,则向所述主卷返回失败信息。5.根据权利要求4所述的容灾异常处理方法,其特征在于,所述主卷向所述辅卷发送对所述待读取数据块的数据读取指令,通过所述数据读取指令确定所述待读取数据块对应的所述辅卷,包括:所述主卷向所述辅卷发送所述对所述待读取数据块的数据读取指令,...

【专利技术属性】
技术研发人员:胡成祥
申请(专利权)人:苏州浪潮智能科技有限公司
类型:发明
国别省市:

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

1