硬盘检测方法、装置、电子设备及存储介质与流程

阅读: 评论:0



1.本技术涉及计算机技术领域,特别是涉及硬盘检测方法、装置、电子设备及存储介质。


背景技术:



2.在分布式存储系统中,硬盘是易耗件,也是存储业务正常运行和数据安全的基础,提前发现坏盘、主动踢除坏盘对保证数据安全具有重要意义。磁盘坏道会造成硬盘性能的严重下降,影响数据安全。坏道是会扩散的,一旦读到坏的地方,读不出数据,就会反复尝试,读写速度受到严重影响,并且反复读取的地方磨损也会增多,容易导致新的坏道产生,存储在上面的数据也可能会丢失。硬盘中存在大量坏道,或者坏道分布范围很广,则宣告该硬盘已基本报废。
3.踢盘管理是指在存储系统中踢出存在大量坏道,或者坏道分布范围很广的硬盘,并利用新的硬盘来替换被踢出的硬盘。目前常见的踢盘管理的方式有以下两种:
4.第一种是周期性的进行全量硬盘的坏道检测,这种方式不放过存储系统中运行的每一块硬盘;坏道检测在本领域内公认是一种比较耗时的操作方式,但对磁盘健康状况的评估是最重要的一部分,如果要提前发现磁盘损坏,坏道检测不可或缺,但是坏道检测会损耗一部分硬盘的性能和使用寿命,针对新添加的硬盘进行坏道检查是一种拖累,这是因为一般新添加的硬盘产生坏道的概率很低,而整体全量检测会影响存储系统的运行性能和增加的硬盘损耗。
5.另一种是文件系统层面的磁盘报错监控,此种方式通常一方面监控文件系统日志查看是否有符合文件系统损坏的报错信息,另一方面主动去文件系统上访问确定文件系统的可读写性来检测硬盘是否健康;但是这两个方面都是从侧面验证硬盘的健康状况,等发现磁盘损坏时,磁盘已经不可读写了,安全性没有保障,存在风险。
6.因此如何在保证存储系统性能,且减少硬盘损耗的情况下,预先检测出硬盘的坏道,成为亟待解决的问题。


技术实现要素:



7.本技术实施例的目的在于提供一种硬盘检测方法、装置、电子设备及存储介质,以实现在保证存储系统性能,且减少硬盘损耗的情况下,预先检测出硬盘的坏道。具体技术方案如下:
8.第一方面,本技术实施例提供了一种硬盘检测方法,所述方法包括:
9.获取预设周期时段内存储系统中各待检测硬盘的延迟日志;
10.根据所述延迟日志,分别确定各所述待检测硬盘的平均延迟;
11.将各所述待检测硬盘的平均延迟与预设延迟阈值进行比较,得到平均延迟大于预设延迟阈值的待检测硬盘作为目标硬盘;
12.分别对各所述目标硬盘进行坏道检测,得到各所述目标硬盘的坏道检测结果。
13.在一种可能的实施方式中,在所述分别对各所述目标硬盘进行坏道检测,得到各所述目标硬盘的坏道检测结果之后,所述方法还包括:
14.根据各所述目标硬盘的坏道检测结果,得到各所述目标硬盘的坏道容量,其中,针对任一目标硬盘,该目标硬盘的坏道容量为该目标硬盘因坏道而损失的容量;
15.根据各所述目标硬盘的坏道容量及预设损坏容量阈值,确定需要更换的目标硬盘作为第一类待更换硬盘。
16.在一种可能的实施方式中,所述根据各所述目标硬盘的坏道容量及预设损坏容量阈值,确定需要更换的目标硬盘作为第一类待更换硬盘,包括:
17.根据各所述目标硬盘的坏道容量及预设损坏容量阈值,得到坏道容量大于预设损坏容量阈值的目标硬盘作为待恢复硬盘;
18.将各所述待恢复硬盘的可用预留块的数量与预设数量阈值进行比较,得到可用预留块的数量小于预设数量阈值的待恢复硬盘作为第一类待更换硬盘。
19.在一种可能的实施方式中,所述方法还包括:
20.获取存储系统中各待检测硬盘的文件系统日志;
21.对所述文件系统日志进行分析,得到文件系统错误的待检测硬盘作为第二类待更换硬盘。
22.在一种可能的实施方式中,所述方法还包括:
23.将待更换硬盘的标识加入到踢盘队列中,其中,所述待更换硬盘包括所述第一类待更换硬盘及所述第二类待更换硬盘;
24.在所述踢盘队列的优先级最高的待更换硬盘中,选取加入时间最早的待更换硬盘,其中,所述第一类待更换硬盘的优先级低于所述第二类待更换硬盘的优先级;
25.将当前选取的待更换硬盘的数据恢复到指定备用硬盘中,并从所述存储系统中踢出当前选取的待更换硬盘。
26.在一种可能的实施方式中,同一时刻用于数据恢复的硬盘的数量与被踢出所述存储系统的硬盘的数量之和不大于1。
27.第二方面,本技术实施例提供了一种硬盘检测装置,所述装置包括:
28.延迟日志获取模块,用于获取预设周期时段内存储系统中各待检测硬盘的延迟日志;
29.平均延迟确定模块,用于根据所述延迟日志,分别确定各所述待检测硬盘的平均延迟;
30.目标硬盘确定模块,用于将各所述待检测硬盘的平均延迟与预设延迟阈值进行比较,得到平均延迟大于预设延迟阈值的待检测硬盘作为目标硬盘;
31.坏道检测执行模块,用于分别对各所述目标硬盘进行坏道检测,得到各所述目标硬盘的坏道检测结果。
32.在一种可能的实施方式中,所述装置还包括:
33.坏道容量确定模块,用于根据各所述目标硬盘的坏道检测结果,得到各所述目标硬盘的坏道容量,其中,针对任一目标硬盘,该目标硬盘的坏道容量为该目标硬盘因坏道而损失的容量;
34.第一类待更换硬盘确定模块,用于根据各所述目标硬盘的坏道容量及预设损坏容
量阈值,确定需要更换的目标硬盘作为第一类待更换硬盘。
35.在一种可能的实施方式中,所述第一类待更换硬盘确定模块,具体用于:根据各所述目标硬盘的坏道容量及预设损坏容量阈值,得到坏道容量大于预设损坏容量阈值的目标硬盘作为待恢复硬盘;将各所述待恢复硬盘的可用预留块的数量与预设数量阈值进行比较,得到可用预留块的数量小于预设数量阈值的待恢复硬盘作为第一类待更换硬盘。
36.在一种可能的实施方式中,所述装置还包括:
37.文件系统日志获取模块,用于获取存储系统中各待检测硬盘的文件系统日志;
38.第二类待更换硬盘确定模块,用于对所述文件系统日志进行分析,得到文件系统错误的待检测硬盘作为第二类待更换硬盘。
39.在一种可能的实施方式中,所述装置还包括:
40.踢盘队列管理模块,用于将待更换硬盘的标识加入到踢盘队列中,其中,所述待更换硬盘包括所述第一类待更换硬盘及所述第二类待更换硬盘;
41.待更换硬盘选取模块,用于在所述踢盘队列的优先级最高的待更换硬盘中,选取加入时间最早的待更换硬盘,其中,所述第一类待更换硬盘的优先级低于所述第二类待更换硬盘的优先级;
42.硬盘更换模块,用于将当前选取的待更换硬盘的数据恢复到指定备用硬盘中,并从所述存储系统中踢出当前选取的待更换硬盘。
43.在一种可能的实施方式中,同一时刻用于数据恢复的硬盘的数量与被踢出所述存储系统的硬盘的数量之和不大于1。
44.第三方面,本技术实施例提供了一种电子设备,包括处理器及存储器;
45.所述存储器,用于存放计算机程序;
46.所述处理器,用于执行所述存储器上所存放的程序时,实现本技术中任一所述的硬盘检测方法。
47.第四方面,本技术实施例提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现本技术中任一所述的硬盘检测方法。
48.本技术实施例有益效果:
49.本技术实施例提供的硬盘检测方法、装置、电子设备及存储介质,获取预设周期时段内存储系统中各待检测硬盘的延迟日志;根据延迟日志,确定各待检测硬盘的平均延迟;将各待检测硬盘的平均延迟与预设延迟阈值进行比较,得到平均延迟大于预设延迟阈值的待检测硬盘作为目标硬盘;分别对各目标硬盘进行坏道检测,得到各目标硬盘的坏道检测结果。硬盘在出现坏道后,其读写延时会明显增加,本技术实施例中,对平均延迟大于预设延迟阈值的硬盘进行坏道检测,相比于周期性对全量硬盘进行坏道检测,可以大大减少坏道检测的次数,能够在保证存储系统性能,且减少硬盘损耗的情况下,预先检测出硬盘的坏道。当然,实施本技术的任一产品或方法并不一定需要同时达到以上所述的所有优点。
附图说明
50.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本
申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
51.图1为本技术实施例的硬盘检测方法的第一种示意图;
52.图2为本技术实施例的硬盘检测方法的第二种示意图;
53.图3为本技术实施例中步骤s202的一种可能的实现方式的示意图;
54.图4为本技术实施例中确定第二类待更换硬盘的方法一种示意图;
55.图5为本技术实施例的硬盘检测方法的第三种示意图;
56.图6为本技术实施例的硬盘检测装置的一种示意图;
57.图7为本技术实施例的电子设备的一种示意图。
具体实施方式
58.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
59.为了能够在保证存储系统性能,且减少硬盘损耗的情况下,预先检测出硬盘的坏道,本技术实施例提供了一种硬盘检测方法,该方法包括:获取预设周期时段内存储系统中各待检测硬盘的延迟日志;根据上述延迟日志,确定各上述待检测硬盘的平均延迟;将各上述待检测硬盘的平均延迟与预设延迟阈值进行比较,得到平均延迟大于预设延迟阈值的待检测硬盘作为目标硬盘;分别对各上述目标硬盘进行坏道检测,得到各上述目标硬盘的坏道检测结果。硬盘在出现坏道后,其读写延时会明显增加,本技术实施例中,对平均延迟大于预设延迟阈值的硬盘进行坏道检测,相比于周期性对全量硬盘进行坏道检测,可以大大减少坏道检测的次数,能够在保证存储系统性能,且减少硬盘损耗的情况下,预先检测出硬盘的坏道。
60.下面进行具体说明,参见图1,图1为本技术实施例的硬盘检测方法的一种流程示意图,包括:
61.s101,获取预设周期时段内存储系统中各待检测硬盘的延迟日志。
62.本技术实施例中的硬盘检测方法可以通过电子设备实现,具体的,该电子设备可以为存储系统中的服务器,例如,可以为分布式存储系统中的控制服务器等。预设周期时段可以按照实际情况自定义设置,例如可以设置为20分钟、30分钟、45分钟或1小时等。例如,当预设周期时段为30分钟时,电子设备以30分钟为一个周期,获取上一周期30分钟内的存储系统中各待检测硬盘的延迟日志。
63.s102,根据上述延迟日志,分别确定各上述待检测硬盘的平均延迟。
64.对延迟日志进行分析,分别确定每一个待检测硬盘的平均延迟。存储系统中在硬盘上读写会时会记录读写延迟,即延迟日志,可以通过监控系统以秒为单位对延迟日志进行计量统计。相关技术中,常用的监控告警系统有open-falcon和prometheus等,他们均具有延迟日志的监控和计量能力,可以将延迟日志发送到open-falcon或prometheus中,以分别统计每一个待检测硬盘的平均延迟。一个例子中,预设周期时段可以为30分钟,电子设备以30分钟为一个周期对各硬盘的延迟进行统计,30分钟内的延迟取平均值,得到《硬盘信
息,平均值延迟》的硬盘列表。
65.s103,将各上述待检测硬盘的平均延迟与预设延迟阈值进行比较,得到平均延迟大于预设延迟阈值的待检测硬盘作为目标硬盘。
66.预设延迟阈值为实验值,根据待检测硬盘无坏道状态下的读写延迟进行设置,预设延迟阈值可以略大于待检测硬盘无坏道状态下的读写延迟,例如,预设延迟阈值可以为待检测硬盘无坏道状态下的读写延迟的1.3倍、1.5倍或2倍等。将平均延迟大于预设延迟阈值的待检测硬盘作为目标硬盘。
67.s104,分别对各上述目标硬盘进行坏道检测,得到各上述目标硬盘的坏道检测结果。
68.坏道检测是一个耗时操作,且损耗硬盘的性能和使用寿命,硬盘在出现坏道后,其读写延时会明显增加,本技术中仅预设周期时段内平均延迟大于预设延迟阈值的硬盘进行坏道检测,可以大大降低坏道检测次数。以预设周期时段为30分钟为例,存储系统中硬盘运行初期可以减少99%的无效坏道检测。
69.本技术实施例中,对平均延迟大于预设延迟阈值的硬盘进行坏道检测,相比于周期性对全量硬盘进行坏道检测,可以大大减少坏道检测的次数,能够在保证存储系统性能,且减少硬盘损耗的情况下,预先检测出硬盘的坏道。
70.在一种可能的实施方式中,参见图2,在上述分别对各上述目标硬盘进行坏道检测,得到各上述目标硬盘的坏道检测结果之后,上述方法还包括:
71.s201,根据各上述目标硬盘的坏道检测结果,得到各上述目标硬盘的坏道容量,其中,针对任一目标硬盘,该目标硬盘的坏道容量为该目标硬盘因坏道而损失的容量。
72.s202,根据各上述目标硬盘的坏道容量及预设损坏容量阈值,确定需要更换的目标硬盘作为第一类待更换硬盘。
73.预设损坏容量阈值可以根据实际情况自定义设置,针对不同型号的硬盘,其预设损坏容量阈值可以不同。一般情况下,硬盘的总容量越大其预设损坏容量阈值也就越大,此外硬盘的预设损坏容量阈值还可以与硬盘中存储的数据的重要度有关,硬盘中存储的数据的重要度越高,该硬盘的预设损坏容量阈值越高。本领域技术人员可以理解的是,坏道容量可等效为可用容量,相应的预设损坏容量阈值等效替换为预设可用容量阈值;并且也可以将容量及容量阈值转换为百分比,任意形式的等效计算方式,均在本技术的保护范围内。
74.一个例子中,可以将坏道容量大于预设损坏容量阈值的目标硬盘作为第一类待更换硬盘。但是相关技术中,硬盘一般会预留一部分block(块),称为预留块,当硬盘中实际用于存储数据的块出现坏道时,通过remap(重映射)的方式利用预留块替换出现坏道的块,从而保证硬盘的容量,以提高硬盘的寿命。次种情况下,还需要考虑预留块。在一种可能的实施方式中,参见图3,上述根据各上述目标硬盘的坏道容量及预设损坏容量阈值,确定需要更换的目标硬盘作为第一类待更换硬盘,包括:
75.s2021,根据各上述目标硬盘的坏道容量及预设损坏容量阈值,得到坏道容量大于预设损坏容量阈值的目标硬盘作为待恢复硬盘。
76.s2022,将各上述待恢复硬盘的可用预留块的数量与预设数量阈值进行比较,得到可用预留块的数量小于预设数量阈值的待恢复硬盘作为第一类待更换硬盘。
77.预设数量阈值可以根据实际情况自定义设置,针对不同的硬盘,其预设数量阈值
可以不同。一般情况下,硬盘中存储的数据的重要度越高,该硬盘的预设数量阈值越大;相应的,硬盘的预设数量阈值越大,该硬盘的寿命也就相对越短。一个例子中,为了尽可能增加硬盘的使用寿命,预设数量阈值可以设置为1。在得到第一类待更换硬盘后,可以对第一类待更换硬盘进行更换,即将第一类待更换硬盘的数据拷贝到备用硬盘中(分布式存储系统中数据一般会有副本备份,可以将第一类待更换硬盘中数据的副本恢复到备用硬盘中),并在存储系统中踢除第一类待更换硬盘。
78.在一种可能的实施方式中,参见图4,上述方法还包括:
79.s401,获取存储系统中各待检测硬盘的文件系统日志。
80.s402,对上述文件系统日志进行分析,得到文件系统错误的待检测硬盘作为第二类待更换硬盘。
81.相关技术中,常用的监控告警系统有open-falcon和prometheus等,他们均具有文件系统日志的监控和计量能力,可以将文件系统日志发送到open-falcon或prometheus中,以分别统计每一个待检测硬盘的文件系统错误。
82.一但硬盘的文件系统错误,说明该硬盘已经损坏,硬盘上数据已经不可读写,因此可以针对文件系统日志进行高优先级的监控,文件系统错误对数据安全性影响最大,一但硬盘的文件系统错误,需要马上踢盘,添加新盘,启动副本数据恢复过程。
83.在一种可能的实施方式中,参见图5,上述方法还包括:
84.s501,将待更换硬盘的标识加入到踢盘队列中,其中,上述待更换硬盘包括上述第一类待更换硬盘及上述第二类待更换硬盘。
85.s502,在上述踢盘队列的优先级最高的待更换硬盘中,选取加入时间最早的待更换硬盘,其中,上述第一类待更换硬盘的优先级低于上述第二类待更换硬盘的优先级。
86.s503,将当前选取的待更换硬盘的数据恢复到指定备用硬盘中,并从上述存储系统中踢出当前选取的待更换硬盘。
87.指定备用硬盘可以为任一备用硬盘,指定备用硬盘的选取策略可以自定义设置本技术中不做具体限定。存储系统中的数据一般采用多副本的方式进行存储,因此可以通过当前选取的待更换硬盘的数据的副本,来将数据恢复到指定备用硬盘中,并从存储系统中踢出当前选取的待更换硬盘。
88.在一种可能的实施方式中,同一时刻用于数据恢复的硬盘的数量与被踢出上述存储系统的硬盘的数量之和不大于1。即,同一时刻一个存储系统中最多仅有一个待更换硬盘被踢出该存储系统,同一时刻一个存储系统中最多仅有一个备用硬盘被用于恢复数据,且同一时刻不会同时执行踢出待更换硬盘及恢复数据到备用硬盘的操作。采用此种方式,可以减少因备用硬盘不足则造成存储系统的总容量突然下降的情况。
89.在一种可能的实施方式中,上述阈值,包括预设周期时段、预设延迟阈值、预设损坏容量阈值、预设数量阈值中的至少一个,可以调整且热加载,从而可以根据业务情况和硬盘实际使用时间对阈值进行动态调整,以使得阈值更加适合实际情况,从而提高存储系统中数据的安全性。
90.本技术实施例还提供了一种硬盘检测装置,参见图6,该装置包括:
91.延迟日志获取模块11,用于获取预设周期时段内存储系统中各待检测硬盘的延迟日志;
92.平均延迟确定模块12,用于根据上述延迟日志,分别确定各上述待检测硬盘的平均延迟;
93.目标硬盘确定模块13,用于将各上述待检测硬盘的平均延迟与预设延迟阈值进行比较,得到平均延迟大于预设延迟阈值的待检测硬盘作为目标硬盘;
94.坏道检测执行模块14,用于分别对各上述目标硬盘进行坏道检测,得到各上述目标硬盘的坏道检测结果。
95.在一种可能的实施方式中,上述装置还包括:
96.坏道容量确定模块,用于根据各上述目标硬盘的坏道检测结果,得到各上述目标硬盘的坏道容量,其中,针对任一目标硬盘,该目标硬盘的坏道容量为该目标硬盘因坏道而损失的容量;
97.第一类待更换硬盘确定模块,用于根据各上述目标硬盘的坏道容量及预设损坏容量阈值,确定需要更换的目标硬盘作为第一类待更换硬盘。
98.在一种可能的实施方式中,上述第一类待更换硬盘确定模块,具体用于:根据各上述目标硬盘的坏道容量及预设损坏容量阈值,得到坏道容量大于预设损坏容量阈值的目标硬盘作为待恢复硬盘;将各上述待恢复硬盘的可用预留块的数量与预设数量阈值进行比较,得到可用预留块的数量小于预设数量阈值的待恢复硬盘作为第一类待更换硬盘。
99.在一种可能的实施方式中,上述装置还包括:
100.文件系统日志获取模块,用于获取存储系统中各待检测硬盘的文件系统日志;
101.第二类待更换硬盘确定模块,用于对上述文件系统日志进行分析,得到文件系统错误的待检测硬盘作为第二类待更换硬盘。
102.在一种可能的实施方式中,上述装置还包括:
103.踢盘队列管理模块,用于将待更换硬盘的标识加入到踢盘队列中,其中,上述待更换硬盘包括上述第一类待更换硬盘及上述第二类待更换硬盘;
104.待更换硬盘选取模块,用于在上述踢盘队列的优先级最高的待更换硬盘中,选取加入时间最早的待更换硬盘,其中,上述第一类待更换硬盘的优先级低于上述第二类待更换硬盘的优先级;
105.硬盘更换模块,用于将当前选取的待更换硬盘的数据恢复到指定备用硬盘中,并从上述存储系统中踢出当前选取的待更换硬盘。
106.在一种可能的实施方式中,同一时刻用于数据恢复的硬盘的数量与被踢出上述存储系统的硬盘的数量之和不大于1。
107.本技术实施例还提供了一种电子设备,包括:处理器及存储器;
108.上述存储器,用于存放计算机程序;
109.上述处理器用于执行上述存储器存放的计算机程序时,实现如下步骤:
110.获取预设周期时段内存储系统中各待检测硬盘的延迟日志;
111.根据上述延迟日志,分别确定各上述待检测硬盘的平均延迟;
112.将各上述待检测硬盘的平均延迟与预设延迟阈值进行比较,得到平均延迟大于预设延迟阈值的待检测硬盘作为目标硬盘;
113.分别对各上述目标硬盘进行坏道检测,得到各上述目标硬盘的坏道检测结果。
114.可选的,参见图7,除了上述处理器21及存储器23外,本技术实施例的电子设备还
包括通信接口22和通信总线24,其中,处理器21,通信接口22,存储器23通过通信总线24完成相互间的通信。
115.可选的,上述处理器用于执行上述存储器存放的计算机程序时,还能够实现上述任一硬盘检测方法。
116.上述电子设备提到的通信总线可以是pci(peripheral component interconnect,外设部件互连标准)总线或eisa(extended industry standard architecture,扩展工业标准结构)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
117.通信接口用于上述电子设备与其他设备之间的通信。
118.存储器可以包括ram(random access memory,随机存取存储器),也可以包括nvm(non-volatile memory,非易失性存储器),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
119.上述的处理器可以是通用处理器,包括cpu(central processing unit,中央处理器)、np(network processor,网络处理器)等;还可以是dsp(digital signal processing,数字信号处理器)、asic(application specific integrated circuit,专用集成电路)、fpga(field-programmable gate array,现场可编程门阵列)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
120.本技术实施例还提供了一种计算机可读存储介质,上述计算机可读存储介质内存储有计算机程序,上述计算机程序被处理器执行时实现上述任一硬盘检测方法。
121.在本技术提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一硬盘检测方法。
122.在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本技术实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如固态硬盘solid state disk(ssd))等。
123.需要说明的是,在本文中,各个可选方案中的技术特征只要不矛盾均可组合来形成方案,这些方案均在本技术公开的范围内。诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括
那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
124.本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、电子设备、计算机程序产品及存储介质的实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
125.以上所述仅为本技术的较佳实施例,并非用于限定本技术的保护范围。凡在本技术的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本技术的保护范围内。

技术特征:


1.一种硬盘检测方法,其特征在于,所述方法包括:获取预设周期时段内存储系统中各待检测硬盘的延迟日志;根据所述延迟日志,分别确定各所述待检测硬盘的平均延迟;将各所述待检测硬盘的平均延迟与预设延迟阈值进行比较,得到平均延迟大于预设延迟阈值的待检测硬盘作为目标硬盘;分别对各所述目标硬盘进行坏道检测,得到各所述目标硬盘的坏道检测结果。2.根据权利要求1所述的方法,其特征在于,在所述分别对各所述目标硬盘进行坏道检测,得到各所述目标硬盘的坏道检测结果之后,所述方法还包括:根据各所述目标硬盘的坏道检测结果,得到各所述目标硬盘的坏道容量,其中,针对任一目标硬盘,该目标硬盘的坏道容量为该目标硬盘因坏道而损失的容量;根据各所述目标硬盘的坏道容量及预设损坏容量阈值,确定需要更换的目标硬盘作为第一类待更换硬盘。3.根据权利要求2所述的方法,其特征在于,所述根据各所述目标硬盘的坏道容量及预设损坏容量阈值,确定需要更换的目标硬盘作为第一类待更换硬盘,包括:根据各所述目标硬盘的坏道容量及预设损坏容量阈值,得到坏道容量大于预设损坏容量阈值的目标硬盘作为待恢复硬盘;将各所述待恢复硬盘的可用预留块的数量与预设数量阈值进行比较,得到可用预留块的数量小于预设数量阈值的待恢复硬盘作为第一类待更换硬盘。4.根据权利要求2或3所述的方法,其特征在于,所述方法还包括:获取存储系统中各待检测硬盘的文件系统日志;对所述文件系统日志进行分析,得到文件系统错误的待检测硬盘作为第二类待更换硬盘。5.根据权利要求4所述的方法,其特征在于,所述方法还包括:将待更换硬盘的标识加入到踢盘队列中,其中,所述待更换硬盘包括所述第一类待更换硬盘及所述第二类待更换硬盘;在所述踢盘队列的优先级最高的待更换硬盘中,选取加入时间最早的待更换硬盘,其中,所述第一类待更换硬盘的优先级低于所述第二类待更换硬盘的优先级;将当前选取的待更换硬盘的数据恢复到指定备用硬盘中,并从所述存储系统中踢出当前选取的待更换硬盘。6.根据权利要求5所述的方法,其特征在于,同一时刻用于数据恢复的硬盘的数量与被踢出所述存储系统的硬盘的数量之和不大于1。7.一种硬盘检测装置,其特征在于,所述装置包括:延迟日志获取模块,用于获取预设周期时段内存储系统中各待检测硬盘的延迟日志;平均延迟确定模块,用于根据所述延迟日志,分别确定各所述待检测硬盘的平均延迟;目标硬盘确定模块,用于将各所述待检测硬盘的平均延迟与预设延迟阈值进行比较,得到平均延迟大于预设延迟阈值的待检测硬盘作为目标硬盘;坏道检测执行模块,用于分别对各所述目标硬盘进行坏道检测,得到各所述目标硬盘的坏道检测结果。8.根据权利要求7所述的装置,其特征在于,所述装置还包括:
坏道容量确定模块,用于根据各所述目标硬盘的坏道检测结果,得到各所述目标硬盘的坏道容量,其中,针对任一目标硬盘,该目标硬盘的坏道容量为该目标硬盘因坏道而损失的容量;第一类待更换硬盘确定模块,用于根据各所述目标硬盘的坏道容量及预设损坏容量阈值,确定需要更换的目标硬盘作为第一类待更换硬盘。9.根据权利要求8所述的装置,其特征在于,所述第一类待更换硬盘确定模块,具体用于:根据各所述目标硬盘的坏道容量及预设损坏容量阈值,得到坏道容量大于预设损坏容量阈值的目标硬盘作为待恢复硬盘;将各所述待恢复硬盘的可用预留块的数量与预设数量阈值进行比较,得到可用预留块的数量小于预设数量阈值的待恢复硬盘作为第一类待更换硬盘。10.根据权利要求8或9所述的装置,其特征在于,所述装置还包括:文件系统日志获取模块,用于获取存储系统中各待检测硬盘的文件系统日志;第二类待更换硬盘确定模块,用于对所述文件系统日志进行分析,得到文件系统错误的待检测硬盘作为第二类待更换硬盘。11.根据权利要求10所述的装置,其特征在于,所述装置还包括:踢盘队列管理模块,用于将待更换硬盘的标识加入到踢盘队列中,其中,所述待更换硬盘包括所述第一类待更换硬盘及所述第二类待更换硬盘;待更换硬盘选取模块,用于在所述踢盘队列的优先级最高的待更换硬盘中,选取加入时间最早的待更换硬盘,其中,所述第一类待更换硬盘的优先级低于所述第二类待更换硬盘的优先级;硬盘更换模块,用于将当前选取的待更换硬盘的数据恢复到指定备用硬盘中,并从所述存储系统中踢出当前选取的待更换硬盘。12.根据权利要求11所述的装置,其特征在于,同一时刻用于数据恢复的硬盘的数量与被踢出所述存储系统的硬盘的数量之和不大于1。13.一种电子设备,其特征在于,包括处理器及存储器;所述存储器,用于存放计算机程序;所述处理器,用于执行所述存储器上所存放的程序时,实现权利要求1-6任一所述的硬盘检测方法。14.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-6任一所述的硬盘检测方法。

技术总结


本申请实施例提供了硬盘检测方法、装置、电子设备及存储介质,获取预设周期时段内存储系统中各待检测硬盘的延迟日志;根据延迟日志,确定各待检测硬盘的平均延迟;将各待检测硬盘的平均延迟与预设延迟阈值进行比较,得到平均延迟大于预设延迟阈值的待检测硬盘作为目标硬盘;分别对各目标硬盘进行坏道检测,得到各目标硬盘的坏道检测结果。硬盘在出现坏道后,其读写延时会明显增加,本申请实施例中,对平均延迟大于预设延迟阈值的硬盘进行坏道检测,相比于周期性对全量硬盘进行坏道检测,可以大大减少坏道检测的次数,能够在保证存储系统性能,且减少硬盘损耗的情况下,预先检测出硬盘的坏道。硬盘的坏道。硬盘的坏道。


技术研发人员:

石晓琛

受保护的技术使用者:

北京金山云网络技术有限公司

技术研发日:

2021.03.18

技术公布日:

2022/9/26

本文发布于:2022-12-01 09:37:08,感谢您对本站的认可!

本文链接:https://patent.en369.cn/patent/4/17994.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:硬盘   所述   阈值   坏道
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 369专利查询检索平台 豫ICP备2021025688号-20 网站地图