预测硬盘故障发生时间的方法、装置及存储介质与流程

文档序号:17790086发布日期:2019-05-31 20:03阅读:203来源:国知局
本公开涉及计算机
技术领域
:,特别是涉及一种预测硬盘故障发生时间的方法、装置及存储介质。
背景技术
::据国内外统计资料显示,硬盘是当前数据中心最主要的故障源。相关报告中指出:“在一个拥有4000个节点的数据中心,平均每6小时就会有一个硬盘发生故障”。硬盘故障如此频繁的发生势必会导致业务中断以及数据丢失等严重后果。如果能提前预测到硬盘故障的发生,将对数据中心的运营带来极大地便利。目前,相关技术中的硬盘故障预测技术在一味追求提升检出率的情况下,导致误检率偏高,因此很多健康硬盘会被误判为故障硬盘。且相关硬盘故障预测技术仅能预测硬盘是否会发生故障,而无法预测故障可能发生的时间,导致预测的故障距离真正故障时间较长(短则一两周,长则一两个月),因此浪费硬盘生命周期,无法有效指导换盘。且在对硬盘的故障进行预测时受限于处理数据体量大、处理器处理能力有限等原因,导致需要较长的时间才能得出预测结果(短则十几分钟,长则数小时),因此硬盘故障预测效率较低。技术实现要素:本公开提供一种硬盘故障发生时间的预测方法、装置及存储介质,用以解决相关技术中无法对硬盘发生故障的时间进行预测的问题。根据本公开的一个方面,提供了一种硬盘故障发生时间的预测方法,包括:根据采集到的硬盘的各项状态数据从多个硬盘中筛选出濒临故障的硬盘;计算在第一预设时间段内采集到的濒临故障的硬盘的各项状态数据中的各条数据的变化量以及离散量,得到第一预测数据集;将所述第一预测数据集输入第一训练模型,得到各硬盘在未来的第二预设时间段内发生故障的概率,其中,所述第一训练模型通过第一人工智能算法基于第一训练数据集进行训练得到,所述第一训练数据集中包括正样本数据以及负样本数据,其中,故障硬盘对应的变化量以及离散量为正样本数据,非故障硬盘对应的变化量以及离散量为负样本数据。可选地,根据采集到的各硬盘的各项状态数据确定各硬盘中濒临故障的硬盘,包括:将采集到的所述各硬盘的各项状态数据输入第二训练模型,得到与所述各项状态数据对应的分类结果,所述分类结果的类别包括濒临故障以及健康,其中,所述第二训练模型通过第二人工智能算法基于第二训练数据集进行训练得到,所述第二训练数据集中包括正样本数据以及负样本数据,其中,所述各硬盘中非故障硬盘对应的状态数据为负样本数据,故障硬盘对应的状态数据为正样本数据;将获得的分类结果中类别为濒临故障的分类结果占总结果的比例超过第二阈值的硬盘确定为濒临故障的硬盘。可选地,所述状态数据包括:硬盘的smart信息和/或硬盘的读/写i/o信息。可选地,所述smart信息包括以下至少一项:硬盘重映射的扇区个数、硬件不可修复的错误计数、硬件错误检查和纠正ecc修复的错误计数、原始读出错率、磁头寻道出错率以及磁头离盘片过高导致写失败的次数;所述i/o信息至少包括:写入块数。可选地,所述方法还包括:在将所述第一预测数据集输入第一训练模型之前,将所述各硬盘在所述第一预设时间段内的状态数据合并为一项数据,计算该项数据内各条数据的离散量以及变化量;将所述各硬盘中非故障硬盘的离散量以及变化量标记为负样本数据,将所述各硬盘中故障硬盘的离散量以及变化量标记为正样本数据,得到所述第一训练数据集。可选地,所述方法还包括:使用新采集到的各硬盘的状态数据更新所述原始数据集中的待更新数据,其中,所述待更新数据是所述原始数据集中在最早的第三预设时间段内采集到的所述状态数据。可选地,所述变化量通过以下任一公式进行计算:以及其中,δ为所述变化量,an为在所述第一预设时间段内采集到的第n项状态数据,k为在所述第一预设时间段内采集到的状态数据的总数。根据本公开的第二个方面,提供了一种预测硬盘故障发生时间的装置,包括:筛选模块,用于根据采集到的硬盘的各项状态数据从多个硬盘中筛选出濒临故障的硬盘;计算模块,用于计算在第一预设时间段内采集到的濒临故障的硬盘的各项状态数据中的各条数据的变化量以及离散量,得到第一预测数据集;输入模块,用于将所述第一预测数据集输入第一训练模型,得到各硬盘在未来的第二预设时间段内发生故障的概率,其中,所述第一训练模型通过第一人工智能算法基于第一训练数据集进行训练得到,所述第一训练数据集中包括正样本数据以及负样本数据,其中,故障硬盘对应的变化量以及离散量为正样本数据,非故障硬盘对应的变化量以及离散量为负样本数据。可选地,所述筛选模块包括:输入单元,用于将采集到的所述各硬盘的各项状态数据输入第二训练模型,得到与所述各项状态数据对应的分类结果,所述分类结果的类别包括濒临故障以及健康,其中,所述第二训练模型通过第二人工智能算法基于第二训练数据集进行训练得到,所述第二训练数据集中包括正样本数据以及负样本数据,其中,所述各硬盘中非故障硬盘对应的状态数据为负样本数据,故障硬盘对应的状态数据为正样本数据;确定单元,用于将获得的分类结果中类别为濒临故障的分类结果占总结果的比例超过第二阈值的硬盘确定为濒临故障的硬盘。可选地,所述状态数据包括:硬盘的smart信息和/或硬盘的读/写i/o信息。可选地,所述smart信息包括以下至少一项:硬盘重映射的扇区个数、硬件不可修复的错误计数、硬件错误检查和纠正ecc修复的错误计数、原始读出错率、磁头寻道出错率以及磁头离盘片过高导致写失败的次数;所述i/o信息至少包括:写入块数。可选地,所述装置还包括:合并模块,用于在将所述第一预测数据集输入第一训练模型之前,将所述各硬盘在所述第一预设时间段内的状态数据合并为一项数据,计算该项数据内各条数据的离散量以及变化量;第一标记模块,用于将所述各硬盘中非故障硬盘的离散量以及变化量标记为负样本数据,将所述各硬盘中故障硬盘的离散量以及变化量标记为正样本数据,得到所述第一训练数据集。可选地,所述装置还包括:更新模块,用于使用新采集到的各硬盘的状态数据更新所述原始数据集中的待更新数据,其中,所述待更新数据是所述原始数据集中在最早的第二预设时间段内采集到的所述状态数据。可选地,所述变化量通过以下任一公式进行计算:以及其中,δ为所述变化量,an为在所述第一预设时间段内采集到的第n项状态数据,k为在所述第一预设时间段内采集到的状态数据的总数。根据本公开的第三个方面,提供了一种预测硬盘故障发生时间的装置,包括:处理器;用于存储处理器可执行指令的存储器;当所述指令被处理器执行时,执行如下操作:根据采集到的硬盘的各项状态数据从多个硬盘中筛选出濒临故障的硬盘;计算在第一预设时间段内采集到的濒临故障的硬盘的各项状态数据中的各条数据的变化量以及离散量,得到第一预测数据集;将所述第一预测数据集输入第一训练模型,得到各硬盘在未来的第二预设时间段内发生故障的概率,其中,所述第一训练模型通过第一人工智能算法基于第一训练数据集进行训练得到,所述第一训练数据集中包括正样本数据以及负样本数据,其中,故障硬盘对应的变化量以及离散量为正样本数据,非故障硬盘对应的变化量以及离散量为负样本数据。根据本公开的第四个方面,提供了一种非临时性计算机可读存储介质,当所述存储介质中的指令由处理器执行时,使得处理器能够执行根据本公开第一个方面所述的方法。本发明有益效果如下:本公开实施例的预测硬盘故障发生时间的方法,将基于第一预设时间段内采集到的濒临故障的硬盘的各项状态数据计算得到各条状态数据的变化量以及离散量,从而得到第一预测数据集,将该第一预测数据集输入第一训练模块可也测出各硬盘在未来的第二预设时间段内发生故障的概率,从而实现了预测硬盘发生故障的时间的目的。附图说明图1是根据一示例性实施例示出的一种预测硬盘故障发生时间的方法的流程图;图2是根据一示例性实施例示出的一种预测硬盘故障发生时间的方法的流程图;图3是根据一示例性实施例示出的一种预测硬盘故障发生时间的方法的流程图;图4是根据一示例性实施例示出的一种预测硬盘故障发生时间的装置的框图;图5是根据一示例性实施例示出的一种预测硬盘故障发生时间的装置的框图。具体实施方式下面将结合本发明实施例中的附图,对本公开的实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。基于本公开中的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。图1是根据一示例性实施例示出的一种预测硬盘故障发生时间的方法的流程图,如图1所示,该方法包括如下步骤:步骤101:根据采集到的硬盘的各项状态数据从多个硬盘中筛选出濒临故障的硬盘;在本公开的预测硬盘故障发生时间的方法的一个示例性实施场景中,该方法可应用于对数据中心的大量硬盘进行故障预测,硬盘例如可以是sata(serialadvancedtechnologyattachment,串行ata接口规范)接口的硬盘。在上述步骤101中,可以以固定的时间间隔n采集数据中心的所有硬盘的状态数据,n的取值可以为3小时,用来采集硬盘状态数据的采集工具可以是开源工具包smartmontools、指令iostat中的一种。可将一段连续时间m内的采集的硬盘的状态数据作为原始数据集,m的取值例如是60天。假设数据中心共有g块硬盘,那么原始数据集共计g*m/n条样本数据(以下也简称样本)。在本公开的预测硬盘故障发生时间的方法中,采集各硬盘的状态数据的操作可持续地进行,以提供最新的样本。举例说明,假设数据中心共有20000块硬盘,根据一段时间内采集到的该20000块硬盘的各项状态数据确定出濒临故障的硬盘有20块,故从20000块硬盘中筛选出了濒临故障的该20块硬盘,则可仅对该20块硬盘进行故障时间的预测,即在执行了上述步骤101之后,可仅针对步骤101中筛选出的濒临故障的硬盘执行后续步骤102以及步骤103,减少了需进行故障时间预测的硬盘的个数,降低了需处理的数据量,显著提高了对硬盘故障时间的预测的效率。在一种可实现方式中,硬盘的状态数据可包括:硬盘的smart(self-monitoringanalysisandreportingtechnology,自我监测、分析及报告技术)信息和/或硬盘的i/o(input/output,输入/输出)信息。其中,所述smart信息包括以下至少一项:硬盘重映射的扇区个数、硬件不可修复的错误计数、硬件ecc(errorcorrectingcode,错误检查和纠正)修复的错误计数、原始读出错率、磁头寻道出错率以及磁头离盘片过高导致写失败的次数;所述i/o信息至少包括:写入块数(blk_written)。例如,硬盘的smart信息可至少包括以下3个条目的normal值:#5(reallocatedsectorcount,硬盘重映射的扇区个数)、#187(reporteduncorrectableerrors,硬件不可修复的错误计数)以及#195(hardwareeccrecovered,硬件ecc修复的错误计数)。又例如,硬盘的smart信息可以下6个条目的normal值:#1(rawreaderrorrate,原始读出错率)、#5(reallocatedsectorcount,硬盘重映射的扇区个数)、#7(seekerrorrate,磁头寻道出错率)、#187(reporteduncorrectableerrors,硬件不可修复的错误计数)、#189(highflywrite,磁头离盘片过高导致写失败的次数)以及#195(hardwareeccrecovered,硬件ecc修复的错误计数),再加上i/o信息的一个条目,硬盘的状态数据可共有7个条目。步骤102:计算在第一预设时间段内采集到的濒临故障的硬盘的各项状态数据中的各条数据的变化量以及离散量,得到第一预测数据集;上述第一预设时间段的例如7天,在步骤102中,例如,可以仅获取最近7天内采集到的数据中心的各硬盘的各项状态数据。其中,第一预测数据集中可包括硬盘的多种的状态数据(例如上述7个条目对应的7种状态数据),每种状态数据分别包括在第一预设时间段内不同的时间采集到的多条数据;第一预测数据集中也可仅包括硬盘的一种状态数据,该种情况下,在步骤102中,可直接计算在第一预设时间段内采集到的濒临故障的硬盘的该种状态数据中各条数据的变化量以及离散量。上述离散量可以体现硬盘的一条状态数据与总体均数之间的差异,该离散量可以为方差或标准差,变化量可体现硬盘的一条状态数据在第一预设时间段内的变化程度。步骤103:将所述第一预测数据集输入第一训练模型,得到各硬盘在未来的第二预设时间段内发生故障的概率,其中,所述第一训练模型通过第一人工智能算法基于第一训练数据集进行训练得到,所述第一训练数据集中包括正样本数据以及负样本数据,其中,故障硬盘对应的变化量以及离散量为正样本数据,非故障硬盘对应的变化量以及离散量为负样本数据。其中,第一预设时间段可大于第二预设时间段,或者二者也可相等。其中,可将硬盘在发生故障之前的一个时间段之内的状态数据确定为故障硬盘对应的数据;将硬盘在发生故障之前的一个时间段之外的状态数据确定为非故障硬盘对应的数据,或者直接删除该部分数据;将未发生故障的硬盘的状态数据确定为非故障硬盘对应的数据。其中,上述第一人工智能算法可包括:逻辑回归算法、人工神经网络算法、随机森林算法中的任意一种算法,例如可选择逻辑回归算法对第一训练数据集进行训练,得到第一训练模型。本公开实施例的预测硬盘故障发生时间的方法,将基于第一预设时间段内采集到的濒临故障的硬盘的各项状态数据计算得到各条状态数据的变化量以及离散量,从而得到第一预测数据集,将该第一预测数据集输入第一训练模块可也测出各硬盘在未来的第二预设时间段内发生故障的概率,从而实现了预测硬盘发生故障的时间的目的。在一个例子中,在存在濒临故障硬盘的情况时,可触发执行上述步骤102以及步骤103,假设存在濒临故障的硬盘为h块,h≤g。将该h个硬盘在最近7天(为上述第一预设时间段的一个示例)的样本进行合并,得到h个样本,每个样本有7个条目,将各硬盘的最近7天的样本中每个条目分别求方差(为上述离散量的一个示例)和变化量,则每个样本有14个条目,将计算得到的该方差以及变化量作为第一预测数据集,逐一将该h个样本对应的方差以及变化量输入预先训练得到的第一训练模型,可逐一得到各硬盘在未来7天发生故障的概率。其中,对h块濒临故障的硬盘,逐一进行故障时间预测的过程可包括:{对于第1块濒临故障硬盘,将该硬盘对应的方差以及变化量输入第一训练模型,得出其在未来7天发生故障的概率为p_1。……(以此类推,不再赘述)对于第h块濒临故障硬盘,将该硬盘对应的方差以及变化量输入第一训练模型,得出其在未来7天发生故障的概率为p_h。综合上述过程得到的硬盘在未来七天发生故障的概率结果,如果得出某硬盘在未来7天发生故障的概率大于第一阈值,该第一阈值的取值范围可以是50%-90%,例如该第一阈值为80%,则认为该硬盘将在未来7天发生故障,可将该硬盘加入换盘告警列表。运维人员可根据该换盘告警列表进行换盘处理操作。换盘处理操作可逐一进行,例如,按照硬盘故障概率由高至低的顺序进行换盘。在进行换盘处理操作时,可将故障硬盘中的数据全部拷贝至新加入的硬盘,使得系统硬盘的个数保持不变。在一种可实现方式中,其中,可以使用以下任一公式求上述变化量:以及其中,δ为所述变化量,an为在所述第一预设时间段内采集到的第n项状态数据,k为在所述第一预设时间段内采集到的状态数据的总数。由于硬盘是在其使用过程中逐渐发生恶化的,因此,仅将一次采集的一个硬盘的状态数据作为一个样本来预测硬盘故障,会忽略硬盘使用过程中逐渐恶化的因素。故本发明实施例的方法可基于一段时间内(即上述第一预设时间段)采集到的多条样本来预测硬盘发生故障的时间。例如,在硬盘逐渐恶化的过程中,发现硬盘#187是剧烈震荡的,那么可将最近一段时间,例如最近14天(为上述第一预设时间段的一个示例)内硬盘#187的所有样本抽出,合并为一个样本,确定出该样本中数据的变化程度(包括上述变化量以及离散量),基于该变化程度预测硬盘在未来一段时间,例如未来5天(为上述第二预设时间段的一个示例)发生故障的概率。下结合图2对基于一段时间段采集到的样本对硬盘发生故障的时间进行预测的方法进行说明,图2是根据一示例性实施例示出的一种预测硬盘故障发生时间的方法的流程图,如图2所示,该方法在图1所示的方法的基础上还可包括:步骤201:在将所述第一预测数据集输入第一训练模型之前,将所述各硬盘在所述第一预设时间段内的状态数据合并为一项数据,计算该项数据内各条数据的离散量以及变化量;合并得到的该项数据中可包括在第一预设时段内的不同时间采集到的数据;其中,在每次采集硬盘的多种不同状态数据的情况下,在步骤201中,可将在第一预设时间段内采集的各硬盘的状态数据中属于同一种状态数据的状态数据组合为一项状态数据。步骤202:将所述各硬盘中非故障硬盘的离散量以及变化量标记为负样本数据,将所述各硬盘中故障硬盘的离散量以及变化量标记为正样本数据,得到所述第一训练数据集。其中,步骤201以及步骤202可在步骤101以及步骤102之前执行,也可在步骤101以及步骤102之后执行,图2中仅示出了步骤201在步骤101之前执行的一种示例情况。在获得该第一训练数据集后,可基于第一人工智能算法对该数据集进行训练,即可得到上述第一训练模型。在一种可实现方式中,根据采集到的硬盘的各项状态数据从多个硬盘中筛选出濒临故障的硬盘可包括:将采集到的所述各硬盘的各项状态数据(以下也称第二测试数据集)输入第二训练模型,得到与所述各项状态数据对应的分类结果,所述分类结果的类别包括濒临故障以及健康,其中,所述第二训练模型通过第二人工智能算法基于第二训练数据集进行训练得到,所述第二训练数据集中包括正样本数据以及负样本数据,其中,所述各硬盘中非故障硬盘对应的状态数据为负样本数据,故障硬盘对应的状态数据为正样本数据;将获得的分类结果中类别为濒临故障的分类结果占总结果的比例超过第二阈值的硬盘确定为濒临故障的硬盘,该第二阈值例如为80%。以下通过一个例子对从多个硬盘中筛选出濒临故障的硬盘的处理过程进行说明。在该例子中,可将上述g块硬盘在3天中每块硬盘产生的多个样本作为第二预测数据集。如果样本个数太少,则难以有效采集到硬盘的恶化状态;如果样本个数太多,则增大了处理量。样本数量可选择20-40条为宜,例如,选择样本数量为24个。对全体g块硬盘,逐一进行预测:{对于第一块硬盘,逐条样本进行预测:{将第一条样本输入第二训练模型,得出分类结果。将第一块硬盘的第二条样本输入第二训练模块,得出分类结果。……(以此类推,不再赘述)对第24条样本,输入第二训练模型,得出分类结果。综合上述24个分类结果。如果该硬盘具有超过t个分类结果为的类型为濒临故障,则确定预测结果为该硬盘濒临故障。其中,t的取值范围可以为[12,22],例如t的取值可以为18。如果该硬盘的濒临故障的分类结果不超过t个,则判定该硬盘为健康硬盘。}对于第二块硬盘,逐条样本进行预测……(以此类推,不再赘述)对于第g块硬盘,逐条样本进行预测。}上述例子以投票的方式对濒临故障的硬盘进行判断,可筛选出数据中心的硬盘中濒临故障的硬盘。将上述过程中被判定为濒临故障的硬盘添加入濒临故障硬盘列表。从而成功预测出了即将出现故障的硬盘。其中,上述用于对第二训练数据集进行训练的第二人工智能算法例如可以是支持向量机算法、贝叶斯算法、梯度推进机算法中的任意一种算法。在一种可实现方式中,获得第二训练数据集可包括:以第一预设周期采集所述各硬盘的状态数据,该第一预设周期例如3个小时,得到原始数据集;对所述原始数据集中的各项状态数据进行标记,将硬盘在发生故障前的第三预设时间段之内的状态数据标记为正样本数据,将硬盘在发生故障前的第三预设时间段之外的状态数据标记为负样本数据,或删除硬盘在发生故障前的第三预设时间段之外的状态数据,将属于未发生故障的硬盘的状态数据标记为负样本数据,得到上述第二训练数据集。例如,对原始数据集的所有样本进行标记:对健康硬盘的每条样本标记为负样本;对故障盘在故障前k时间之内的样本标记为正样本;对故障硬盘在故障前k时间之外的样本标记为负样本或丢弃该样本。k的取值例如是7天,最终形成第二训练数据集。在一个例子中,获得第一训练数据集的过程可包括:对上述原始数据集进行缩减,可仅保留各硬盘最近7天的样本。分别将各硬盘在该7天内的样本进行合并,得到g个样本,每个样本具有7种状态数据,分别各种状态数据中的各条数据求离散量以及变化量。最后对健康硬盘的离散量以及变化量标记为负样本,将故障硬盘的离散量以及变化量标记为正样本,形成第二训练数据集。在一种可实现方式中,本公开的预测硬盘故障发生时间的方法还可包括:使用新采集到的各硬盘的状态数据更新所述原始数据集中的待更新数据,其中,所述待更新数据是所述原始数据集中在最早的第三预设时间段内采集到的所述状态数据。例如,以第二预设周期周期性地使用最近一个所述第二预设周期内采集到的所述状态数据替换所述原始数据集中最早的所述第二预设周期内采集到的所述状态数据,其中,第二预设周期例如7天,故在本实施例中,可使用最近7天采集到的状态数据替换原始数据集中最早的7天所采集到的状态数据,从而对原始数据集进行更新。以下通过一个例子对本公开的预测硬盘故障发生时间的方法进行说明,在该例子中,数据中心有4800块硬盘。每隔3小时对这4800块硬盘进行一次smart信息的采集和io的采集。每块硬盘的每次采集形成1个样本。采集在第60天结束时,共产生2304000条样本作为原始数据集。假设在数据采集期间,共出现故障盘70块。将4730块健康硬盘的共计2270400条样本标记为负样本,将70块故障盘在故障前7天的共计3920条样本标记为正样本,其余样本丢弃,得到第二训练数据集。针对第二训练数据集采用支持向量机算法的模型训练,得到第二练模型。逐一对每一块硬盘最近3天共计24条的样本输入第二训练模型,每个硬盘均会得出24条分类结果。如果一块硬盘具有超过18条分类结果认定濒临故障,则认为该硬盘濒临故障,加入濒临故障硬盘列表,共计23块硬盘。将4800块硬盘的最近7天的样本合并,每个样本的每个条目求7天内的方差和变化量。共计4800条样本,每条样本有14个条目。将4730块健康硬盘标的状态数据记为负样本,将70块故障硬盘的状态数据标记为正样本,得到第一训练数据集。针对第一训练数据集采用逻辑回归算法的模型训练,得到第一训练模型。将濒临故障硬盘列表中的23块硬盘的最近7天的样本合并,每个条目求7天内的方差和变化量,得到23条样本。逐一将23条样本输入第一训练模型,逐一得到各硬盘在未来7天发生故障的概率。其中,当硬盘的该概率大于80%者,将硬盘加入换盘告警列表,假设被加入换盘告警列表的硬盘共有4块。则可由运维人员对该4块硬盘执行换盘操作。将最新的7天的采集的各硬盘的状态数据加入原始数据集,替代原始数据集中最早7天检测到的状态数据。图3是根据一示例性实施例示出的一种预测硬盘故障发生时间的装置的框图,如图3所示,该装置30包括如下组成部分:筛选模块31,用于根据采集到的硬盘的各项状态数据从多个硬盘中筛选出濒临故障的硬盘;计算模块32,用于计算在第一预设时间段内采集到的濒临故障的硬盘的各项状态数据中的各条数据的变化量以及离散量,得到第一预测数据集;输入模块33,用于将所述第一预测数据集输入第一训练模型,得到各硬盘在未来的第二预设时间段内发生故障的概率,其中,所述第一训练模型通过第一人工智能算法基于第一训练数据集进行训练得到,所述第一训练数据集中包括正样本数据以及负样本数据,其中,故障硬盘对应的变化量以及离散量为正样本数据,非故障硬盘对应的变化量以及离散量为负样本数据。在一种可实现方式中,所述筛选模块可包括:输入单元,用于将采集到的所述各硬盘的各项状态数据输入第二训练模型,得到与所述各项状态数据对应的分类结果,所述分类结果的类别包括濒临故障以及健康,其中,所述第二训练模型通过第二人工智能算法基于第二训练数据集进行训练得到,所述第二训练数据集中包括正样本数据以及负样本数据,其中,所述各硬盘中非故障硬盘对应的状态数据为负样本数据,故障硬盘对应的状态数据为正样本数据;确定单元,用于将获得的分类结果中类别为濒临故障的分类结果占总结果的比例超过第二阈值的硬盘确定为濒临故障的硬盘。图4是根据一示例性实施例示出的一种预测硬盘故障发生时间的装置的框图,如图4所示,该装置在图3所示的装置的基础上还可包括:合并模块41,用于在将所述第一预测数据集输入第一训练模型之前,将所述各硬盘在所述第一预设时间段内的状态数据合并为一项数据,计算该项数据内各条数据的离散量以及变化量;第一标记模块42,用于将所述各硬盘中非故障硬盘的离散量以及变化量标记为负样本数据,将所述各硬盘中故障硬盘的离散量以及变化量标记为正样本数据,得到所述第一训练数据集。在一种可实现方式中,所述状态数据可包括:硬盘的smart信息和/或硬盘的i/o信息。在一种可实现方式中,所述smart信息可包括以下至少一项:硬盘重映射的扇区个数、硬件不可修复的错误计数、硬件ecc修复的错误计数、原始读出错率、磁头寻道出错率以及磁头离盘片过高导致写失败的次数;所述i/o信息至少包括:写入块数。在一种可实现方式中,所述装置还可包括:更新模块,用于使用新采集到的各硬盘的状态数据更新所述原始数据集中的待更新数据,其中,所述待更新数据是所述原始数据集中在最早的第三预设时间段内采集到的所述状态数据。在一种可实现方式中,所述变化量通过以下任一公式进行计算:以及其中,δ为所述变化量,an为在所述第一预设时间段内采集到的第n项状态数据,k为在所述第一预设时间段内采集到的状态数据的总数。图5是根据一示例性实施例示出的一种预测硬盘故障发生时间的装置600的框图。例如,装置600可以被提供为一服务器。参照图5,装置600包括处理器622,其数量可以为一个或多个,以及存储器632,用于存储可由处理器622执行的计算机程序。存储器632中存储的计算机程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理器622可以被配置为执行该计算机程序,以执行上述的预测硬盘故障发生时间的方法。另外,装置600还可以包括电源组件626和通信组件650,该电源组件626可以被配置为执行装置600的电源管理,该通信组件650可以被配置为实现装置600的通信,例如,有线或无线通信。此外,该装置600还可以包括输入/输出(i/o)接口658。装置600可以操作基于存储在存储器632的操作系统,例如windowsservertm,macosxtm,unixtm,linuxtm等等。在另一示例性实施例中,还提供了一种包括程序指令的非临时性计算机可读存储介质,例如包括程序指令的存储器632,上述程序指令可由装置600的处理器622执行以完成上述的预测硬盘故障发生时间的方法。尽管为示例目的,已经公开了本公开的优选实施例,本领域的技术人员将意识到各种改进、增加和取代也是可能的,因此,本公开的范围应当不限于上述实施例。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1