一种硬盘诊断方法、系统、设备及存储介质与流程

文档序号:28915887发布日期:2022-02-16 10:38阅读:114来源:国知局
一种硬盘诊断方法、系统、设备及存储介质与流程

1.本发明属于计算机领域,具体涉及一种硬盘诊断方法、系统、设备及存储介质。


背景技术:

2.伴随着大数据时代的到来,对服务的存储需求越来越大,尤其是受疫情的影响,大家都宅在家中,生成了海量数据,这样就对服务器的数据存储提出了很高的要求,存储硬盘的好坏对数据安全至关重要。诊断硬盘好坏的指标一直都是基于smart日志来判断的,smart日志诊断出来的信息有很多,然而对于哪些数据是诊断硬盘的关键数据,大家都是凭借经验去关联的,没有客观的依据,这样不仅提高了对运维人员的技术要求,而且根据经验不一定能准确的诊断硬盘的好坏。
3.因此,亟需一种可以有效应对上述问题的硬盘诊断方案。


技术实现要素:

4.为解决以上问题,本发明提出了一种硬盘诊断方法,包括:
5.以第一预定周期为间隔获取硬盘日志信息,并对所述硬盘日志信息进行解析以生成所述硬盘的第一硬盘特征数据并存入数据库中;
6.以第二预定周期为间隔基于所述硬盘特征数据训练模型,并通过模型对硬盘进行诊断,同时统计诊断错误率;
7.响应于所述诊断错误率满足预设条件,将当前模型的诊断结果作为新特征加入所述第一硬盘特征数据,并基于新的硬盘特征数据迭代生成新的模型对所述硬盘进行诊断。
8.在本发明的一些实施方式中,以第二预定周期为间隔基于所述硬盘特征数据训练模型,并通过模型对硬盘进行诊断,同时统计诊断错误率,包括:
9.以第二预定周期为间隔基于所述第一硬盘特征数据进行训练以得到第一模型;
10.以第一预定周期为间隔基于所述第一模型对所述新生成的硬盘特征数据进行诊断分析并输出诊断结果,同时统计所述第一模型的诊断错误率。
11.在本发明的一些实施方式中,响应于所述诊断错误率满足预设条件,将当前模型的诊断结果作为新特征加入所述硬盘特征数据,并给予新的硬盘特征数据迭代生成新的模型对所述硬盘进行诊断,包括:
12.响应于所述第一模型诊断结果与真实值相比出现错误,统计所述第一模型的诊断错误率,将所述诊断结果作为第一特殊特征加入所述硬盘的特征数据以生成第二硬盘特征数据并存入数据库中。
13.响应于所述第一模型的诊断错误率达到第一预定值,停止所述第一模型的迭代训练,以第二预定周期为间隔基于所述第二硬盘特征数据训练第二模型并,并基于所述第二模型对所述新的硬盘特征数据进行诊断分析,输出诊断结果,统计所述第二模型的诊断错误率。
14.在本发明的一些实施方式中,响应于所述诊断错误率满足预设条件,将当前模型
的诊断结果作为新特征加入所述硬盘特征数据,并给予新的硬盘特征数据迭代生成新的模型对所述硬盘进行诊断,包括:
15.响应于第二模型的诊断错误率达到第二预定值,停止所述第二模型的迭代训练,将所述第二模型的诊断结果作为第二特殊特征加入所述硬盘的特征数据以生成新的第三硬盘特征数据;以及
16.以第二预定周期间隔基于所述第三硬盘特征数据训练以得到第三模型,并通过所述第三模型对所述硬盘进行诊断。
17.在本发明的一些实施方式中,以第一预定周期为间隔获取硬盘日志信息包括:
18.每隔第一预定周期通过硬盘日志工具获取硬盘smart日志信息;以及
19.通过raid卡信息抓取工具获取radi卡信息。
20.在本发明的一些实施方式中,对所述硬盘日志信息进行解析以生成所述硬盘的第一硬盘特征数据并存入数据库中包括:
21.获取所述硬盘日志信息中的属性信息;
22.判断所述属性信息的数据类型是否为离散型;
23.响应于所述属性信息的数据类型为离散型,将所述属性信息作为所述硬盘的特征数据存储到数据库中;
24.响应于所述属性信息的数据类型为非离散型,对所述进行离散化处理以得到离散型数据,并将所述离散型数据作为所述硬盘的特征数据存储到数据库中。
25.在本发明的一些实施方式中,模型为决策树模型。
26.本发明的另一方面,还提出了一种硬盘诊断系统,其特征在于,包括:
27.数据处理模块,所述数据处理模块配置为以第一预定周期为间隔获取硬盘日志信息,并对所述硬盘日志信息进行解析以生成所述硬盘的第一硬盘特征数据并存入数据库中;
28.第一模型生成模块,所述第一模型生成模块配置为以第二预定周期为间隔基于所述硬盘特征数据训练模型,并通过模型对硬盘进行诊断,同时统计诊断错误率;
29.第二模型生成模块,所述第二模型生成模块配置为响应于所述诊断错误率满足预设条件,将当前模型的诊断结果作为新特征加入所述第一硬盘特征数据,并基于新的硬盘特征数据迭代生成新的模型对所述硬盘进行诊断。
30.本发明的又一方面还提出了一种计算机设备,包括:
31.至少一个处理器;以及
32.存储器,所述存储器存储有可在所述处理器上运行的计算机指令,所述指令由所述处理器执行时实现上述实施方式中任意一项所述方法的步骤。
33.本发明的再一方面还提出了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述实施方式中任意一项所述方法的步骤。
34.通过对历史的硬盘日志的迭代地生成多个决策树模型,极大地提高了在不同阶段对硬盘诊断的准确性。在硬盘数据特征构建时引入raid卡关联参数,不仅能够根据smart日志中的离散值,还能够利用smart中的连续值去生成决策树,通过比对诊断的硬盘的smart日志,生成对硬盘的分析。
35.极大的降低了对运维人员的技术要求,并且减少根据经验的判断去诊断硬盘的好坏,极大的提高了操作的简洁性,提高了效率。
附图说明
36.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
37.图1为本发明实施例提供的一种硬盘诊断方法的方法流程图;
38.图2为本发明实施例提供的一种硬盘诊断系统的结构示意图;
39.图3为本发明实施例提供的具备硬盘诊断方法的一种计算机设备的结构示意图;
40.图4为本发明实施例提供的具备硬盘诊断方法的一种计算机存储介质的结构示意图。
具体实施方式
41.为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明实施例进一步详细说明。
42.需要说明的是,本发明实施例中所有使用“第一”和“第二”的表述均是为了区分两个相同名称非相同的实体或者非相同的参量,可见“第一”“第二”仅为了表述的方便,不应理解为对本发明实施例的限定,后续实施例对此不再一一说明。
43.如图1所示,本发明的第一方面提出了一种硬盘诊断方法,包括:
44.步骤s1、以第一预定周期为间隔获取硬盘日志信息,并对所述硬盘日志信息进行解析以生成所述硬盘的第一硬盘特征数据并存入数据库中;
45.步骤s2、以第二预定周期为间隔基于所述硬盘特征数据训练模型,并通过模型对硬盘进行诊断,同时统计诊断错误率;
46.步骤s3、响应于所述诊断错误率满足预设条件,将当前模型的诊断结果作为新特征加入所述第一硬盘特征数据,并基于新的硬盘特征数据迭代生成新的模型对所述硬盘进行诊断。
47.在本发明的实施例中,本发明提出了一种迭代生成诊断模型的硬盘诊断方法。通过对不同时期的硬盘的特征数据生成不同的诊断模型对硬盘的健康状态进行诊断预测。
48.在本发明的实施例中,在步骤s1中,以一天为单位时间间隔收集服务器集群中的硬盘日志数据,并对硬盘日志数据进行数据预处理生成可用于人工智能模型训练及识别的特征数据,并每天将特征数据保存到数据库中。
49.在步骤s2中,以每周为单位时间间隔,基于步骤s1中的收集的硬盘特征数据迭代生成新的模型,即每隔一周将模型迭代更新一次。并且每天通过模型对当天获取到的硬盘特征数据进行诊断,并记录模型诊断的错误率。
50.在步骤s3中,当步骤s2中迭代生成的模型对硬盘特征数据进行诊断出现错误时或错误率达到一定的标准后,将当前模型的诊断结果作为新的硬盘的特征数据,然后基于新的硬盘的特征数据进行重新训练特征参数不同的模型,同时保留旧的模型用于持续输出对
应的硬盘的新的特征参数,可根据性能需要不更新该旧的模型(即不在每周迭代更新以前的不具备新的特征参数的模型)。
51.在本发明的一些实施方式中,以第二预定周期为间隔基于所述硬盘特征数据训练模型,并通过模型对硬盘进行诊断,同时统计诊断错误率,包括:
52.以第二预定周期为间隔基于所述第一硬盘特征数据进行训练以得到第一模型;
53.以第一预定周期为间隔基于所述第一模型对所述新生成的硬盘特征数据进行诊断分析并输出诊断结果,同时统计所述第一模型的诊断错误率。
54.在本实施例中,在本发明方法的初期,需要基于原始硬盘特征数据生成第一模型用于在前期的对硬盘的诊断工作。因此需要迭代更新该第一模型。
55.在本发明的一些实施方式中,响应于所述诊断错误率满足预设条件,将当前模型的诊断结果作为新特征加入所述硬盘特征数据,并给予新的硬盘特征数据迭代生成新的模型对所述硬盘进行诊断,包括:
56.响应于所述第一模型诊断结果与真实值相比出现错误,统计所述第一模型的诊断错误率,将所述诊断结果作为第一特殊特征加入所述硬盘的特征数据以生成第二硬盘特征数据并存入数据库中。
57.响应于所述第一模型的诊断错误率达到第一预定值,停止所述第一模型的迭代训练,以第二预定周期为间隔基于所述第二硬盘特征数据训练第二模型并,并基于所述第二模型对所述新的硬盘特征数据进行诊断分析,输出诊断结果,统计所述第二模型的诊断错误率。
58.在本实施例中,当第一模型对硬盘健康状态的诊断出现错误时,开始将该第一模型出现错误的错误率作为新的评估该硬盘状态的新的参数生成新的,由于硬盘在使用中随着年限的增长逐渐出现问题,并且可能会在一段时间内同时出现多个硬盘均出现故障的情况,所以在一段时间内第一模型的诊断率可能出现严重下滑,并在后续的训练后会逐渐提高,当其准确率回升到80%时,则开始给予第二硬盘特征数据生成第二预测模型,并基于第二预测模型替代第一预测模型对该硬盘的状态进行判断。
59.在本发明的一些实施方式中,响应于所述诊断错误率满足预设条件,将当前模型的诊断结果作为新特征加入所述硬盘特征数据,并给予新的硬盘特征数据迭代生成新的模型对所述硬盘进行诊断,包括:
60.响应于第二模型的诊断错误率达到第二预定值,停止所述第二模型的迭代训练,将所述第二模型的诊断结果作为第二特殊特征加入所述硬盘的特征数据以生成新的第三硬盘特征数据;以及
61.以第二预定周期间隔基于所述第三硬盘特征数据训练以得到第三模型,并通过所述第三模型对所述硬盘进行诊断。
62.在本发实施例中,当第二硬盘模型的预测准确率为95%(错误率为5%) 时,表示对硬盘的诊断,通过足够的且变化的数据进行训练已经趋于稳定,此时停止第二模型的迭代训练,保留当前第二模型的用于对第二硬盘特征数据进行诊断,并将其诊断结果作为新的特征数据添加到第二硬盘特征中以生成新的第三硬盘特征。
63.进一步,通过第三硬盘特征按照每周为单位进行迭代训练生成第三模型,并再以后基于第一模型和第二模型生成两种额外特征的基础上使用第三模型对第三硬盘特征进
行诊断,诊断结果作为硬拼诊断的最终结果。
64.通过保留模型在硬盘因寿命问题出现故障时的波动的变化特征作为新的硬盘的特征参数,在一定范围内科提高对硬盘这种有寿命限制的设备的稳定性诊断的准确性。
65.在本发明的一些实施方式中,模型为决策树模型。
66.在本发明的一些实施方式中,以第一预定周期为间隔获取硬盘日志信息包括:
67.每隔第一预定周期通过硬盘日志工具获取硬盘smart日志信息;以及
68.通过raid卡信息抓取工具获取raid卡信息。
69.在本实施例中,通过硬盘日志上报装置,生成硬盘日志以及raid卡信息。通过上报装置把信息上报到服务器硬盘日志分析装置分析硬盘 mart日志信息,把日志中的各个值存入数据库以及raid卡信息 smart日志中的各个属性值有离散的和连续的每天处理上报的smart日志,形成大数据信息通过计算硬盘sn以及slotid标识硬盘是否被替换,如果硬盘被替换,需要标志此硬盘是损坏还是其他原图被替换。如果是硬盘损坏,需要在数据库中标志(作为模型诊断的错误率的依据),以便特征值计算上传需要诊断的硬盘的smart日志以及raid卡信息。提取当前smart 日志中的硬盘运行时间以及raid卡信息。
70.在本发明的一些实施方式中,对所述硬盘日志信息进行解析以生成所述硬盘的第一硬盘特征数据并存入数据库中包括:
71.获取所述硬盘日志信息中的属性信息;
72.判断所述属性信息的数据类型是否为离散型;
73.响应于所述属性信息的数据类型为离散型,将所述属性信息作为所述硬盘的特征数据存储到数据库中;
74.响应于所述属性信息的数据类型为非离散型,对所述进行离散化处理以得到离散型数据,并将所述离散型数据作为所述硬盘的特征数据存储到数据库中。
75.在本实施例中,本发明所提供的硬盘诊断方法的模型为决策树模型,为时获取到的硬盘日志数据可以被输入到决策树模型中,需要将数据进行处理得到离散的数据并用于决策树模型的训练与诊断。因此需要将数据进行处理,在此,本发明提供一个优选的实施例,详情如下:
76.1)通过硬盘日志上报装置,生成硬盘日志以及raid卡信息。
77.2)通过上报装置把信息上报到服务器;
78.3)硬盘日志分析装置分析硬盘smart日志信息,把日志中的各个值存入数据库以及raid卡信息;
79.4)smart日志中的各个属性值有离散的和连续的,每天处理上报的 smart日志,形成大数据信息
80.5)通过计算硬盘sn以及slotid标识硬盘是否被替换,如果硬盘被替换,需要标志此硬盘是损坏还是其他原图被替换。如果是硬盘损坏,需要在数据库中标志,以便特征值计算;
81.6)每天上传需要诊断的硬盘的smart日志以及raid卡信息。
82.7)提取当前smart日志中的硬盘运行时间以及raid卡信息。
83.8)根据当前硬盘的运行时间和raid卡信息,查找数据库提取与之相匹配的记录,并计算各个特征的增量信息,数据库中存的属性值为 x
it
(i=1,2

n,t=日期值),其中x
it
为日期为t时,第i个属性的取值。单位时间内属性的增量为:(t1、t2为时间值)
84.9)决策树中离散型特征值得计算,首先提取硬盘运行时间小于等于当前诊断盘的所有离散特征信息以及相同raid卡下硬盘运行时间小于等于当前诊断盘的所有离散特征信息,首先计算相同raid卡下面,运行时间小于等于当前诊断盘的所有属性的信息增益,因为数据库中以及标注硬盘的好坏,所以能很好的计算出各自的占比 pk(k类样本占的比重),因为是离散值,n为离散值的取值情况,即 k∈[1,2,

n],为了计算简单,只取2中情况,p
ak
表示样本k占数据库所有样本的比重。
[0085]
10)当前样本集合d中,d的信息熵定义为
[0086][0087]
11)假设离散属性f有多个可能的取值{f1,f2,
…fk
},若使用f来对样本机型划分,会产生k个分支节点,其中第k个分支节点包含了d中所有在属性f上取值为fk的样本,记为dk。计算出dk的信息熵,于是计算出属性f对样本集d进行划分获得的信息增益,其中δ为权重,离散型权重为0.5
[0088][0089]
这里引入p
ak
这个因子从全局占比的角度对样本进行影响,信息增益最大的值,划分为属性放到决策树中。
[0090]
12)smaer日志中大多数的属性值是连续的,给定样本集d和连续属性 f,假定f在d上出现了n个不同的取值,将这些值从小到大排序即 {x1,x2,

,xn},基于划分点k可将d分为2个子集,显然对于向量的属性xi和x
i+1
来说,k在区间[xi,x
i+1
]中取任意值所产生的划分结果相同,这样我们把区间的中卫点作为候选划分点,然后按照离散型的属性来计算信息增益了。这里添加步骤10中δ的计算,即计算步骤9 中的增量计算,注意这里的时间周期按照7天为一个周期计算,计算出δxi{i为硬盘运行时间除以7计算的迭代次数},则:
[0091][0092]
通过上述硬盘特征参数的信息熵等内容训练用于诊断硬盘状态的决策树模型。
[0093]
通过对历史的硬盘日志的迭代地生成多个决策树模型,极大地提高了在不同阶段对硬盘诊断的准确性。在硬盘数据特征构建时引入raid卡关联参数,不仅能够根据smart日志中的离散值,还能够利用smart中的连续值去生成决策树,通过比对诊断的硬盘的smart日志,生成对硬盘的分析。
[0094]
极大的降低了对运维人员的技术要求,并且减少根据经验的判断去诊断硬盘的好坏,极大的提高了操作的简洁性,提高了效率。
[0095]
如图2所示,本发明的另一方面,还提出了一种硬盘诊断系统,其特征在于,包括:
[0096]
数据处理模块1,所述数据处理模块1配置为以第一预定周期为间隔获取硬盘日志信息,并对所述硬盘日志信息进行解析以生成所述硬盘的第一硬盘特征数据并存入数据库中;
[0097]
第一模型生成模块2,所述第一模型生成模块2配置为以第二预定周期为间隔基于所述硬盘特征数据训练模型,并通过模型对硬盘进行诊断,同时统计诊断错误率;
[0098]
第二模型生成模块3,所述第二模型生成模块3配置为响应于所述诊断错误率满足预设条件,将当前模型的诊断结果作为新特征加入所述第一硬盘特征数据,并基于新的硬盘特征数据迭代生成新的模型对所述硬盘进行诊断。
[0099]
如图3所示,本发明的又一方面还提出了一种计算机设备,包括:
[0100]
至少一个处理器21;以及
[0101]
存储器22,所述存储器存储有可在所述处理器上运行的计算机指令23,所述指令23由所述处理器21执行时实现:一种硬盘诊断方法,包括:
[0102]
以第一预定周期为间隔获取硬盘日志信息,并对所述硬盘日志信息进行解析以生成所述硬盘的第一硬盘特征数据并存入数据库中;
[0103]
以第二预定周期为间隔基于所述硬盘特征数据训练模型,并通过模型对硬盘进行诊断,同时统计诊断错误率;
[0104]
响应于所述诊断错误率满足预设条件,将当前模型的诊断结果作为新特征加入所述第一硬盘特征数据,并基于新的硬盘特征数据迭代生成新的模型对所述硬盘进行诊断。
[0105]
在本发明的一些实施方式中,以第二预定周期为间隔基于所述硬盘特征数据训练模型,并通过模型对硬盘进行诊断,同时统计诊断错误率,包括:
[0106]
以第二预定周期为间隔基于所述第一硬盘特征数据进行训练以得到第一模型;
[0107]
以第一预定周期为间隔基于所述第一模型对所述新生成的硬盘特征数据进行诊断分析并输出诊断结果,同时统计所述第一模型的诊断错误率。
[0108]
在本发明的一些实施方式中,响应于所述诊断错误率满足预设条件,将当前模型的诊断结果作为新特征加入所述硬盘特征数据,并给予新的硬盘特征数据迭代生成新的模型对所述硬盘进行诊断,包括:
[0109]
响应于所述第一模型诊断结果与真实值相比出现错误,统计所述第一模型的诊断错误率,将所述诊断结果作为第一特殊特征加入所述硬盘的特征数据以生成第二硬盘特征数据并存入数据库中。
[0110]
响应于所述第一模型的诊断错误率达到第一预定值,停止所述第一模型的迭代训练,以第二预定周期为间隔基于所述第二硬盘特征数据训练第二模型并,并基于所述第二模型对所述新的硬盘特征数据进行诊断分析,输出诊断结果,统计所述第二模型的诊断错误率。
[0111]
在本发明的一些实施方式中,响应于所述诊断错误率满足预设条件,将当前模型的诊断结果作为新特征加入所述硬盘特征数据,并给予新的硬盘特征数据迭代生成新的模型对所述硬盘进行诊断,包括:
[0112]
响应于第二模型的诊断错误率达到第二预定值,停止所述第二模型的迭代训练,将所述第二模型的诊断结果作为第二特殊特征加入所述硬盘的特征数据以生成新的第三硬盘特征数据;以及
[0113]
以第二预定周期间隔基于所述第三硬盘特征数据训练以得到第三模型,并通过所述第三模型对所述硬盘进行诊断。
[0114]
在本发明的一些实施方式中,以第一预定周期为间隔获取硬盘日志信息包括:
[0115]
每隔第一预定周期通过硬盘日志工具获取硬盘smart日志信息;以及
[0116]
通过raid卡信息抓取工具获取radi卡信息。
[0117]
在本发明的一些实施方式中,对所述硬盘日志信息进行解析以生成所述硬盘的第一硬盘特征数据并存入数据库中包括:
[0118]
获取所述硬盘日志信息中的属性信息;
[0119]
判断所述属性信息的数据类型是否为离散型;
[0120]
响应于所述属性信息的数据类型为离散型,将所述属性信息作为所述硬盘的特征数据存储到数据库中;
[0121]
响应于所述属性信息的数据类型为非离散型,对所述进行离散化处理以得到离散型数据,并将所述离散型数据作为所述硬盘的特征数据存储到数据库中。
[0122]
本发明的再一方面还提出了一种计算机可读存储介质401,所述计算机可读存储介质401存储有计算机程序402,所述计算机程序被处理器执行时实现上述实施方式中任意一项所述方法的步骤。
[0123]
需要特别指出的是,上述各个实施例中的各个组件或步骤均可以相互交叉、替换、增加、删减,因此,这些合理的排列组合变换形成的组合也应当属于本发明的保护范围,并且不应将本发明的保护范围局限在所述实施例之上。
[0124]
以上是本发明公开的示例性实施例,上述本发明实施例公开的顺序仅仅为了描述,不代表实施例的优劣。但是应当注意,以上任何实施例的讨论仅为示例性的,并非旨在暗示本发明实施例公开的范围(包括权利要求)被限于这些例子,在不背离权利要求限定的范围的前提下,可以进行多种改变和修改。根据这里描述的公开实施例的方法权利要求的功能、步骤和/或动作不需以任何特定顺序执行。此外,尽管本发明实施例公开的元素可以以个体形式描述或要求,但除非明确限制为单数,也可以理解为多个。
[0125]
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本发明实施例公开的范围(包括权利要求)被限于这些例子;在本发明实施例的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,并存在如上所述的本发明实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。因此,凡在本发明实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包括在本发明实施例的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1