一种条带检测方法、装置、设备及可读存储介质与流程
- 国知局
- 2024-07-31 19:36:30
本发明涉及存储,特别是涉及一种条带检测方法、装置、设备及可读存储介质。
背景技术:
1、raid(redundant array of independent disks,独立磁盘冗余阵列)的条带巡检技术是raid内部的任务,与主机io(input/output,输入/输出)不同,是由raid内部发起读操作,对满条带进行数据读取,从硬盘读取数据后,重新对读取的数据分块进行异或计算,检查异或结果是否等于校验分块:若相等,则表示条带一致;若不相等,则表示条带数据异常。
2、对于raid5来说,当前的巡检技术在执行检测时,只能检测到条带不一致,即只能通过计算得知数据分块异或之后与校验分块不相等,但是并不能获取到是校验分块异常了还是数据分块异常,并且更无法进一步确认多个数据分块中哪块数据异常,所以只能做到提示告警,而无法有效的判断异常数据并指导用户修复数据规避风险。
3、综上所述,如何有效地优化条带巡检技术等问题,是目前本领域技术人员急需解决的技术问题。
技术实现思路
1、本发明的目的是提供一种条带检测方法、装置、设备及可读存储介质,能够对优化条带巡检技术,使之不仅可检测出异常的条带,还可检测出条带中异常的分块。
2、为解决上述技术问题,本发明提供如下技术方案:
3、一种条带检测方法,包括:
4、在目标条带未通过数据一致性检测的情况下,从所述目标条带中读取每一个分块的校验哈希值;
5、对所述目标条带中每个分块进行哈希计算,得到每一个分块的当前哈希值;
6、若分块的当前哈希值与校验哈希值一致,则确定该分块的数据正常;
7、若分块的当前哈希值与校验哈希值不一致,则确定该分块的数据异常;
8、输出异常告警信息;所述异常告警信息包括所述目标条带的条带信息和数据异常的分块信息。
9、优选地,向所述目标条带写入数据的过程,包括:
10、接收主机发送的写io请求;
11、异或计算待写数据得到校验数据;
12、判断所述待写数据和所述校验数据是否满分块;
13、如果是,则将所述待写数据写入数据分块,将所述校验数据写入校验分块,并计算所述数据分块的校验哈希值,所述校验分块的校验哈希值;
14、将计算出的校验哈希值写入对应分块的哈希存储空间;
15、在将所述待写入数据写入所述数据分块,将所述校验数据写入所述校验分块后,向所述主机反馈写成功应答;
16、在将计算出的所述校验哈希值写入对应分块的哈希存储空间后,释放资源并确定所述写io请求已处理完;
17、其中,在所述目标条带中包括1个校验分块、4个数据分块和5个哈希存储空间,每个哈希存储空间中存储1个校验哈希值。
18、优选地,条带划分,包括:
19、获取预设的分块大小和哈希存储空间大小;
20、计算5个所述分块大小和5个所述哈希存储空间大小的条带空间总和;
21、按照所述条带空间总和进行条带划分;
22、在每一个划分出的条带中,划分出5个分块和5个哈希存储空间。
23、优选地,向所述目标条带写入数据的过程,包括:
24、向所述目标条带的各个分块写入数据;
25、计算每一个分块中数据的校验哈希值,并校验哈希值写入所述目标条带的哈希存储空间。
26、优选地,从所述目标条带中读取每一个分块的校验哈希值,包括:
27、从所述目标条带中的哈希存储空间中读取每一个分块的校验哈希值。
28、优选地,所述输出异常告警信息之后,还包括:
29、利用所述异常告警信息中的条带信息和块信息,对数据异常的分块进行数据修复。
30、优选地,所述目标条带包括第一数据分块、第二数据分块、第三数据分块、第四数据分块和校验分块,以及每一个分块逐一对应的第一校验哈希值、第二校验哈希值、第三校验哈希值、第四校验哈希值和第五校验哈希值;
31、利用所述异常告警信息中的条带信息和块信息,对数据异常的块进行数据修复,包括:
32、若所述目标条带中仅有一个数据异常的分块,则从所述目标条带中读取数据正常的分块;
33、若数据异常的分块为所述校验分块,则计算所述第一数据分块异或所述第二数据分块异或所述第三数据分块异或第四数据分块,得到新校验分块;
34、计算所述新校验分块的哈希值,在所述新校验分块的哈希值与所述第五校验哈希值相同的情况下,确定完成数据恢复;
35、若数据异常的分块为所述第一数据分块,则计算所述校验分块异或所述第二数据分块异或所述第三数据分块异或所述第四数据分块,得到新第一数据分块;
36、若所述新第一数据分块与所述第一数据分块一致,则确定所述第一校验哈希值异常;
37、若所述新第一数据分块与所述第一数据分块不一致,则计算所述新第一数据分块的哈希值,在所述新第一数据分块的哈希值与所述第一校验哈希值相同的情况下,将所述新第一数据分块确定为所述第一数据分块的恢复数据。
38、一种条带检测装置,包括:
39、哈希读取模块,用于在目标条带未通过数据一致性检测的情况下,从所述目标条带中读取每一个分块的校验哈希值;
40、哈希计算模块,用于对所述目标条带中每个分块进行哈希计算,得到每一个分块的当前哈希值;
41、分块异常识别模块,用于若分块的当前哈希值与校验哈希值一致,则确定该分块的数据正常;若分块的当前哈希值与校验哈希值不一致,则确定该分块的数据异常;
42、告警模块,用于输出异常告警信息;所述异常告警信息包括所述目标条带的条带信息和数据异常的分块信息。
43、一种电子设备,包括:
44、存储器,用于存储计算机程序;
45、处理器,用于执行所述计算机程序时实现上述条带检测方法的步骤。
46、一种可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述条带检测方法的步骤。
47、应用本发明实施例所提供的方法,在目标条带未通过数据一致性检测的情况下,从目标条带中读取每一个分块的校验哈希值;对目标条带中每个分块进行哈希计算,得到每一个分块的当前哈希值;若分块的当前哈希值与校验哈希值一致,则确定该分块的数据正常;若分块的当前哈希值与校验哈希值不一致,则确定该分块的数据异常;输出异常告警信息;异常告警信息包括目标条带的条带信息和数据异常的分块信息。
48、在本发明中,当发现目标条带未通过数据一致性见的情况下,可从目标条带中读取每一个分块的校验哈希值。计算目标条带中每一个分块的当前哈希值;然后对每一个分块进行当前哈希值和校验哈希值进行比对,若分块的当前哈希值与校验哈希值一致,则确定该分块的数据正常;否则,即确定该分块的数据异常。在输出异常告警信息时,该异常告警信息中可包括该目标条带的条带信息和确定数据异常的分块信息。如此,基于告异常告警信息不仅可明确目标条带产生了异常,还可明确是哪个分块的数据异常。即,本发明能够有效地判断异常数据并指导修复数据以规避风险。
49、相应地,本发明实施例还提供了与上述条带检测方法相对应的条带检测装置、设备和可读存储介质,具有上述技术效果,在此不再赘述。
本文地址:https://www.jishuxx.com/zhuanli/20240731/183169.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。
下一篇
返回列表