一种数据处理方法、装置及相关设备制造方法及图纸

技术编号:31695324 阅读:19 留言:0更新日期:2022-01-01 10:55
本申请提供一种数据处理方法、装置及相关设备,在确定源卷的第一位置出现介质错误时,可以获取到主机的写操作,若主机写操作的对象为源卷,则在第一位置填充自定义数据,此时源卷的介质错误被修复,将源卷中的数据拷贝至源卷的快照卷中,此时快照卷中与第一位置对应的第二位置的数据为自定义数据,并不是正确的数据,因此可以标记第二位置出现介质错误,修改快照卷的位图,之后可以执行主机写操作,以保证快照关系正常运行而不会强制停止,并保证快照的数据一致性。照的数据一致性。照的数据一致性。

【技术实现步骤摘要】
一种数据处理方法、装置及相关设备


[0001]本申请涉及计算机领域,特别涉及一种数据处理方法、装置及相关设备。

技术介绍

[0002]快照技术是一种基于时间点的数据保护技术,当对一个生产卷创建快照关系后,会产生一个快照卷,快照卷中会记录生产卷在创建快照关系那一时刻的数据,快照关系中的生产卷被称为源卷,快照卷被称为目标卷。快照处理输入/输出(Input/Output,IO)的基本单位,称为grain,大小为256KB。
[0003]快照关系维护了一个位图(bitmap),位图是用于管理快照关系中从源卷向目标卷拷贝数据操作的一个数组结构。数组中每一个元素大小为1bit,用于标记源卷中某个grain数据是否已经从源卷拷贝到了目标卷。若已拷贝,则将位图对应bit置为1;若未拷贝,则置为0。
[0004]当主机IO要修改源卷某个grain的数据时,快照会先将源卷中的老数据读出来,写到目标卷中,然后更新位图,最后才会处理主机IO。该操作被称为COW(copy on first write,写时拷贝),可以保证目标卷中保存的正是打快照时刻源卷中的数据。
[0005]然而,源卷可能存在介质错误(medium error),即外存故障,如磁盘损坏、强磁场干扰等,通常来说,介质错误会导致存储中读取磁盘中对应逻辑区块地址(Logical Block Address,LBA)位置的数据时,无法从磁盘中读出,存储只能上报介质错误,一般对卷该位置的LBA执行一次写操作,便能修复卷的该位置的medium error。/>[0006]若在从源卷读取老数据时发生介质错误,会导致无法从源卷中读出老数据。这就导致了无法向目标卷写入数据,而快照关系只能被迫停止。这就会让快照的保护数据的功能失效。

技术实现思路

[0007]有鉴于此,本申请的目的在于提供一种数据处理方法、装置及相关设备,可以在读取源卷发生介质错误时保证快照的可用性。其具体方案如下:
[0008]第一方面,本申请提供了一种数据处理方法,包括:
[0009]在确定源卷的第一位置出现介质错误时,获取到主机的写操作;
[0010]若所述主机写操作的对象为源卷,则在所述第一位置填充自定义数据;
[0011]将所述源卷中的数据拷贝至所述源卷的快照卷中,并标记所述快照卷中与所述第一位置对应的第二位置出现介质错误,修改所述快照卷的位图;
[0012]执行所述主机写操作。
[0013]可选的,所述方法还包括:
[0014]若所述主机写操作的对象为所述源卷的快照卷,且所述主机写操作的位置包括所述第一位置对应的第二位置,则将所述源卷中的数据和所述主机写操作的主机数据进行合并,将合并后的数据写入所述快照卷,修改所述快照卷的位图。
[0015]可选的,所述方法还包括:
[0016]若所述主机写操作的对象为所述源卷的快照卷,且所述主机写操作的位置不包括所述第一位置对应的第二位置,则在所述第一位置填充自定义数据;
[0017]将所述源卷中的数据拷贝至所述快照卷,并标记所述快照卷中与所述第一位置对应的第二位置出现介质错误,修改所述快照卷的位图;
[0018]执行所述主机写操作。
[0019]可选的,所述方法还包括:
[0020]若所述主机写操作的对象为所述源卷的快照卷,且所述主机写操作的位置不包括所述第一位置对应的第二位置,则在所述第一位置填充自定义数据;
[0021]将所述源卷中的数据和所述主机写操作的主机数据进行合并,将合并后的数据写入所述快照卷,并标记所述快照卷中与所述第一位置对应的第二位置出现介质错误,修改所述快照卷的位图。
[0022]可选的,所述第一位置和所述第二位置包括一个或多个扇区sector。
[0023]第二方面,本申请实施例还提供了一种数据处理装置,包括:
[0024]写操作获取单元,用于在确定源卷的第一位置出现介质错误时,获取到主机的写操作;
[0025]数据填充单元,用于若所述主机写操作的对象为源卷,则在所述第一位置填充自定义数据;
[0026]拷贝单元,用于将所述源卷中的数据拷贝至所述源卷的快照卷中,并标记所述快照卷中与所述第一位置对应的第二位置出现介质错误,修改所述快照卷的位图;
[0027]写操作执行单元,用于执行所述主机写操作。
[0028]可选的,所述写操作执行单元还用于:
[0029]若所述主机写操作的对象为所述源卷的快照卷,且所述主机写操作的位置包括所述第一位置对应的第二位置,则将所述源卷中的数据和所述主机写操作的主机数据进行合并,将合并后的数据写入所述快照卷,修改所述快照卷的位图。
[0030]可选的,所述数据填充单元还用于:若所述主机写操作的对象为所述源卷的快照卷,且所述主机写操作的位置不包括所述第一位置对应的第二位置,则在所述第一位置填充自定义数据;
[0031]所述写操作执行单元还用于:将所述源卷中的数据和所述主机写操作的主机数据进行合并,将合并后的数据写入所述快照卷,并标记所述快照卷中与所述第一位置对应的第二位置出现介质错误,修改所述快照卷的位图。
[0032]可选的,
[0033]所述数据填充单元还用于:若所述主机写操作的对象为所述源卷的快照卷,且所述主机写操作的位置不包括所述第一位置对应的第二位置,则在所述第一位置填充自定义数据;
[0034]所述拷贝单元还用于:将所述源卷中的数据拷贝至所述快照卷,并标记所述快照卷中与所述第一位置对应的第二位置出现介质错误,修改所述快照卷的位图;
[0035]所述写操作执行单元还用于:执行所述主机写操作。
[0036]可选的,所述第一位置和所述第二位置包括一个或多个扇区sector。
[0037]第三方面,本申请公开了一种电子设备,包括:
[0038]存储器和处理器;
[0039]其中,所述存储器,用于存储计算机程序;
[0040]所述处理器,用于执行所述计算机程序,以实现前述公开的数据处理方法。
[0041]第四方面,本申请公开了一种计算机可读存储介质,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现前述公开的数据处理方法。
[0042]本申请实施例提供了一种数据处理方法及相关设备,在确定源卷的第一位置出现介质错误时,可以获取到主机的写操作,若主机写操作的对象为源卷,则在第一位置填充自定义数据,此时源卷的介质错误被修复,将源卷中的数据拷贝至源卷的快照卷中,修改快照卷的位图,此时快照卷中与第一位置对应的第二位置的数据为自定义数据,并不是正确的数据,因此可以标记第二位置出现介质错误,之后可以执行主机写操作,以保证快照关系正常运行而不会强制停止,并保证快照的数据一致性。
附图说明
[0043]为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种数据处理方法,其特征在于,包括:在确定源卷的第一位置出现介质错误时,获取到主机的写操作;若所述主机写操作的对象为源卷,则在所述第一位置填充自定义数据;将所述源卷中的数据拷贝至所述源卷的快照卷中,并标记所述快照卷中与所述第一位置对应的第二位置出现介质错误,修改所述快照卷的位图;执行所述主机写操作。2.根据权利要求1所述方法,其特征在于,还包括:若所述主机写操作的对象为所述源卷的快照卷,且所述主机写操作的位置包括所述第一位置对应的第二位置,则将所述源卷中的数据和所述主机写操作的主机数据进行合并,将合并后的数据写入所述快照卷,修改所述快照卷的位图。3.根据权利要求1所述的方法,其特征在于,还包括:若所述主机写操作的对象为所述源卷的快照卷,且所述主机写操作的位置不包括所述第一位置对应的第二位置,则在所述第一位置填充自定义数据;将所述源卷中的数据拷贝至所述快照卷,并标记所述快照卷中与所述第一位置对应的第二位置出现介质错误,修改所述快照卷的位图;执行所述主机写操作。4.根据权利要求1所述的方法,其特征在于,还包括:若所述主机写操作的对象为所述源卷的快照卷,且所述主机写操作的位置不包括所述第一位置对应的第二位置,则在所述第一位置填充自定义数据;将所述源卷中的数据和所述主机写操作的主机数据进行合并,将合并后的数据写入所述快照卷,并标记所述快照卷中与所述第一位置对应的第二位置出现介质错误,修改所述快照卷的位图。5.根据权利要求1

4任一项所述的方法,其特征在于,所述第一位置和所述第二位置包括一个或多个扇区sector。6.一种数...

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

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

1