慢盘检测方法、装置、电子设备及计算机可读存储介质与流程
- 国知局
- 2024-11-06 14:30:49
本技术涉及存储,特别涉及一种慢盘检测方法,还涉及一种慢盘检测装置、电子设备、计算机可读存储介质以及计算机程序产品。
背景技术:
1、慢盘检测是存储系统管理中一个重要的技术,用于识别和处理存储系统中的慢速硬盘。慢盘通常指的是在读写数据时速度较慢或者响应时间较长的硬盘,这可能会对整个存储系统的性能产生负面影响。随着技术的不断发展,硬盘的技术类型、磁盘转速、容量等都发生了翻天覆地的变化,而且不同技术指标、不同厂家磁盘的性能也参差不齐,这就给存储系统快速、有效地识别出慢盘带来了挑战。
2、因此,如何在存储系统中实现准确高效地慢盘检测,以有效保障存储系统的正常运行是本领域技术人员亟待解决的问题。
技术实现思路
1、本技术的目的是提供一种慢盘检测方法,该慢盘检测方法可以在存储系统中实现准确高效地慢盘检测,有效地保障了存储系统的正常运行;本技术的另一目的是提供一种慢盘检测装置、电子设备、计算机可读存储介质以及计算机程序产品,均具有上述有益效果。
2、第一方面,本技术提供了一种慢盘检测方法,包括:
3、当接收到慢盘检测指令时,根据所述慢盘检测指令确定目标硬盘;
4、确定所述目标硬盘对应的现有io队列,并按照预设检测条件对所述现有io队列进行检测,判断所述现有io队列是否在所述预设检测条件下清空;
5、若所述现有io队列未在所述预设检测条件下清空,则确定所述目标硬盘为慢盘;
6、若所述现有io队列在所述预设检测条件下清空,则针对所述目标硬盘构造io请求,并通过执行所述io请求获得相应的时延信息;
7、根据所述时延信息确定所述目标硬盘是否为慢盘。
8、可选地,所述确定所述目标硬盘对应的现有io队列,并按照预设检测条件对所述现有io队列进行检测,判断所述现有io队列是否在所述预设检测条件下清空之前,还包括:
9、调取故障检测脚本,并利用所述故障检测脚本对所述目标硬盘进行故障检测,确定所述目标硬盘是否为故障硬盘;
10、当所述目标硬盘为所述故障硬盘时,输出硬盘故障提示;
11、当所述目标硬盘不为所述故障硬盘时,执行所述确定所述目标硬盘对应的现有io队列,并按照预设检测条件对所述现有io队列进行检测,判断所述现有io队列是否在所述预设检测条件下清空的步骤。
12、可选地,所述利用所述故障检测脚本对所述目标硬盘进行故障检测,确定所述目标硬盘是否为故障硬盘,包括:
13、执行所述故障检测脚本,对硬盘日志进行检索以判断所述硬盘日志中是否存在io报错信息;
14、当所述硬盘日志中存在所述io报错信息时,确定所述目标硬盘为所述故障硬盘;
15、当所述硬盘日志中不存在所述io报错信息时,确定所述目标硬盘不为所述故障硬盘。
16、可选地,所述当接收到慢盘检测指令时,根据所述慢盘检测指令确定目标硬盘之前,还包括:
17、当接收到慢盘标记通知时,根据所述慢盘标记通知向监控组件发送慢盘消息,以使所述监控组件根据所述慢盘消息对所述目标硬盘进行隔离;
18、接收所述监控组件反馈的对应于所述慢盘消息的响应消息,根据所述响应消息触发所述慢盘检测指令。
19、可选地,所述慢盘检测方法还包括:
20、当确定所述目标硬盘不为慢盘时,对所述目标硬盘进行恢复处理,以解除所述目标硬盘的隔离。
21、可选地,所述若所述现有io队列在所述预设检测条件下清空,则针对所述目标硬盘构造io请求,并通过执行所述io请求获得相应的时延信息,包括:
22、若所述现有io队列在所述预设检测条件下清空,则针对所述目标硬盘的预设存储位置构造第一预设数量个io请求;
23、依次执行各所述io请求,获得每一所述io请求的请求处理时延;
24、根据每一所述io请求的请求处理时延和所述第一预设数量计算获得平均io时延,并将所述平均io时延作为所述时延信息;
25、判断当前时延计算次数是否达到预设次数;
26、若所述当前时延计算次数未达到所述预设次数,则返回所述针对所述目标硬盘的预设存储位置构造第一预设数量个io请求的步骤;
27、若所述当前时延计算次数达到所述预设次数,则获得所述预设次数对应数量个所述时延信息;
28、相应地,所述根据所述时延信息确定所述目标硬盘是否为慢盘,包括:
29、当所有所述时延信息中的平均io时延全部超出预设阈值时,确定所述目标硬盘为慢盘;
30、当所有所述时延信息中的平均io时延未全部超出所述预设阈值时,确定所述目标硬盘不为慢盘。
31、可选地,所述慢盘检测方法还包括:
32、当确定目标硬盘为慢盘时,根据预设次数对应数量个平均io时延计算得到目标硬盘的最终io时延;
33、获取慢盘等级映射关系,并利用该慢盘等级映射关系对最终io时延进行查询,确定目标硬盘的慢盘等级;
34、获取后处理操作映射关系,并利用后处理操作映射关系对目标硬盘执行慢盘等级对应的预设操作。
35、可选地,所述按照预设检测条件对所述现有io队列进行检测,判断所述现有io队列是否在所述预设检测条件下清空,包括:
36、按照预设检测周期对所述现有io队列进行检测,判断所述现有io队列是否在第二预设数量个所述预设检测周期内清空。
37、第二方面,本技术还提供了一种慢盘检测装置,包括:
38、第一确定模块,用于当接收到慢盘检测指令时,根据所述慢盘检测指令确定目标硬盘;
39、判断模块,用于确定所述目标硬盘对应的现有io队列,并按照预设检测条件对所述现有io队列进行检测,判断所述现有io队列是否在所述预设检测条件下清空;
40、第二确定模块,用于若所述现有io队列未在所述预设检测条件下清空,则确定所述目标硬盘为慢盘;
41、执行模块,用于若所述现有io队列在所述预设检测条件下清空,则针对所述目标硬盘构造io请求,并通过执行所述io请求获得相应的时延信息;
42、第三确定模块,用于根据所述时延信息确定所述目标硬盘是否为慢盘。
43、第三方面,本技术还公开了一种电子设备,包括:
44、存储器,用于存储计算机程序;
45、处理器,用于执行所述计算机程序时实现如上所述的任一种慢盘检测方法的步骤。
46、第四方面,本技术还公开了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的任一种慢盘检测方法的步骤。
47、第五方面,本发明还公开了一种计算机程序产品,包括计算机程序/指令,所述计算机程序/指令被处理器执行时实现如上所述的任一种慢盘检测方法的步骤。
48、本技术提供了一种慢盘检测方法,当接收到慢盘检测指令时,根据所述慢盘检测指令确定目标硬盘;确定所述目标硬盘对应的现有io队列,并按照预设检测条件对所述现有io队列进行检测,判断所述现有io队列是否在所述预设检测条件下清空;若所述现有io队列未在所述预设检测条件下清空,则确定所述目标硬盘为慢盘;若所述现有io队列在所述预设检测条件下清空,则针对所述目标硬盘构造io请求,并通过执行所述io请求获得相应的时延信息;根据所述时延信息确定所述目标硬盘是否为慢盘。
49、应用本技术所提供的技术方案,在根据慢盘检测指令确定需要进行慢盘检测的目标硬盘之后,可以先利用该目标硬盘对应的现有的io请求(即上述现有io队列中的io请求)对其进行慢盘检测,在此过程中,可以按照预设检测条件对现有io队列检测,以确定其是否可以在该预设检测条件下清空,若无法在该预设检测条件下清空,可以直接判定该目标硬盘为慢盘,无需再进行其他处理;若现有io队列可以在预设检测条件下清空,则可以针对目标硬盘构造新的io请求,并通过统计其时延信息实现对目标硬盘的慢盘识别。由此可见,本技术方案在存储系统中实现了准确且高效地慢盘检测,有效地保障了存储系统的正常运行。
50、在本技术的一个实施例中,在确定需要进行慢盘检测的目标硬盘之后,对其进行慢盘检测之前,可以先对其进行故障检测,即利用故障检测脚本对目标硬盘进行故障检测,以确定该目标硬盘是否为故障硬盘,若为故障硬盘则进行故障提示,否则继续进行慢盘检测流程,由此,即可有效避免由于触发故障盘慢盘检测带来的不必要的时间占用和资源浪费,从而保证了慢盘检测效率,减少了资源占用。
51、本技术所提供的慢盘检测装置、电子设备、计算机可读存储介质以及计算机程序产品,同样具有上述技术效果,本技术在此不再赘述。
本文地址:https://www.jishuxx.com/zhuanli/20241106/322533.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。