一种故障检测、数据处理方法、装置及设备与流程

文档序号:21408007发布日期:2020-07-07 14:42阅读:183来源:国知局
一种故障检测、数据处理方法、装置及设备与流程

本申请涉及互联网技术领域,尤其涉及一种故障检测、数据处理方法、装置及设备。



背景技术:

随着大规模数据中心和云计算的飞速发展,互联网厂商和云计算厂商通常可以维护百万级的服务器,并采用百万级甚至千万级的磁盘,对内或者对外提供pb(petabyte,存储单位)级以上的存储能力。在这种规模下,作为服务器的核心部件之一,磁盘的故障经常出现。据统计,磁盘故障一般占服务器的故障总量的50%左右,是引发服务器宕机、数据丢失等严重问题的主要原因之一。

现有的运维方案,在磁盘发生故障后,可以根据工程师和技术专家的领域知识,对磁盘进行故障检测,以分析磁盘故障的原因,并解决磁盘故障等问题。但是,这种方式会对业务带来一定影响,甚至会导致服务器宕机和数据丢失。



技术实现要素:

本申请提供一种故障检测方法,所述方法包括:

根据第一物理硬件的工单数据确定所述第一物理硬件的故障时刻;

根据所述故障时刻确定所述第一物理硬件的回溯时间窗口;

根据所述回溯时间窗口为所述第一物理硬件的数据样本设置标签值;

根据所述数据样本和所述标签值,确定待检测物理硬件是否发生故障。

本申请提供一种故障检测方法,所述方法包括:

若未存在物理硬件的工单数据,则确定所述物理硬件的观察时间窗口;

根据所述观察时间窗口为所述物理硬件的数据样本设置标签值;

根据所述数据样本和所述标签值,确定待检测物理硬件是否发生故障。

本申请提供一种故障检测方法,所述方法包括:

若存在物理硬件的工单数据,则确定所述物理硬件的回溯时间窗口;

根据所述回溯时间窗口为所述物理硬件的数据样本设置标签值;

根据所述数据样本和所述标签值确定待检测物理硬件是否发生故障。

本申请提供一种故障检测方法,所述方法包括:

确定物理硬件的处理时间窗口;

根据所述处理时间窗口为所述物理硬件的数据样本设置标签值;

根据所述数据样本和所述标签值确定待检测物理硬件是否发生故障。

本申请提供一种数据处理方法,所述方法包括:

若存在物理硬件的工单数据,则确定所述物理硬件的回溯时间窗口;

根据所述回溯时间窗口为所述物理硬件的数据样本设置标签值;

其中,所述数据样本和所述标签值用于检测物理硬件是否发生故障。

本申请提供一种数据处理方法,所述方法包括:

若未存在物理硬件的工单数据,则确定所述物理硬件的观察时间窗口;

根据所述观察时间窗口为所述物理硬件的数据样本设置标签值;

其中,所述数据样本和所述标签值用于检测物理硬件是否发生故障。

本申请提供一种故障检测装置,所述装置包括:确定模块,用于根据第一物理硬件的工单数据确定所述第一物理硬件的故障时刻;根据所述故障时刻确定所述第一物理硬件的回溯时间窗口;设置模块,用于根据所述回溯时间窗口为所述第一物理硬件的数据样本设置标签值;所述确定模块,还用于根据所述数据样本和所述标签值,确定待检测物理硬件是否发生故障。

本申请提供一种故障检测装置,所述装置包括:确定模块,用于若未存在物理硬件的工单数据,则确定所述物理硬件的观察时间窗口;设置模块,用于根据观察时间窗口为所述物理硬件的数据样本设置标签值;所述确定模块,还用于根据所述数据样本和所述标签值,确定待检测物理硬件是否发生故障。

本申请提供一种故障检测设备,包括:

处理器和机器可读存储介质,所述机器可读存储介质上存储有若干计算机指令,所述处理器执行所述计算机指令时进行如下处理:

根据第一物理硬件的工单数据确定所述第一物理硬件的故障时刻;

根据所述故障时刻确定所述第一物理硬件的回溯时间窗口;

根据所述回溯时间窗口为所述第一物理硬件的数据样本设置标签值;

根据所述数据样本和所述标签值,确定待检测物理硬件是否发生故障。

本申请提供一种故障检测设备,包括:

处理器和机器可读存储介质,所述机器可读存储介质上存储有若干计算机指令,所述处理器执行所述计算机指令时进行如下处理:

若未存在物理硬件的工单数据,则确定所述物理硬件的观察时间窗口;

根据所述观察时间窗口为所述物理硬件的数据样本设置标签值;

根据所述数据样本和所述标签值,确定待检测物理硬件是否发生故障。

基于上述技术方案,本申请实施例中,可以预测未来一段时间窗口内,物理硬件是否发生故障,构建预测性维护体系,提前准确进行相应的扫描检测、数据备份、业务迁移等相关操作,减轻对业务的影响,减少服务器宕机和数据丢失等问题,提前进行防范和保护,提升数据中心集群的可靠性。可以增加正样本的数量,尽量均衡正样本的数量和负样本的数量,一定程度缓解了数据样本不均衡的问题。而且,可以去除负样本中的噪音数据,解决数据噪音问题。

附图说明

为了更加清楚地说明本申请实施例或者现有技术中的技术方案,下面将对本申请实施例或者现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据本申请实施例的这些附图获得其它的附图。

图1是本申请一种实施方式中的故障检测方法的流程图;

图2是本申请另一种实施方式中的故障检测方法的流程图;

图3a是-图3e是本申请一种实施方式中的应用场景示意图;

图4是本申请一种实施方式中的故障检测装置的结构图;

图5是本申请另一种实施方式中的故障检测装置的结构图;

图6是本申请另一种实施方式中的故障检测设备的硬件结构图。

具体实施方式

在本申请实施例使用的术语仅仅是出于描述特定实施例的目的,而非限制本申请。本申请和权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其它含义。还应当理解,本文中使用的术语“和/或”是指包含一个或多个相关联的列出项目的任何或所有可能组合。

应当理解,尽管在本申请实施例可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,此外,所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。

本申请实施例提出一种故障检测方法,参见图1所示,为故障检测方法的流程示意图,该方法可以应用于故障检测设备(如服务器),该方法可以包括:

步骤101,根据第一物理硬件的工单数据确定第一物理硬件的故障时刻。

具体的,在第一物理硬件的工单数据中,可以包括第一物理硬件的故障时刻,因此,可以从该工单数据中获取第一物理硬件的故障时刻。

步骤102,根据该故障时刻确定第一物理硬件的回溯时间窗口。

具体的,可以根据第一物理硬件的故障时刻确定回溯时间窗口的截止时刻,例如,截止时刻可以为该故障时刻。然后,获取回溯时间窗口的时间长度,并根据回溯时间窗口的截止时刻与回溯时间窗口的时间长度,确定回溯时间窗口的起始时刻,例如,起始时刻可以为截止时刻与该时间长度的差值。然后,可以将该起始时刻与该截止时刻之间的时间区间确定为该回溯时间窗口。

在一个例子中,获取回溯时间窗口的时间长度,可以包括但不限于:根据变化点检测算法获取回溯时间窗口的时间长度;或者,从本地获取预先配置的回溯时间窗口的时间长度。当然,上述只是两个示例,对此不做限制。

步骤103,根据回溯时间窗口为第一物理硬件的数据样本设置标签值。

具体的,若该第一物理硬件的监控数据的产生时刻位于该回溯时间窗口内,则可以为该监控数据对应的数据样本设置第一标签值,其中,该第一标签值可以表示第一物理硬件发生故障。或者,若该第一物理硬件的监控数据的产生时刻位于该回溯时间窗口之前,则可以为该监控数据对应的数据样本设置第二标签值,其中,该第二标签值可以表示第一物理硬件未发生故障。此外,若第一物理硬件的监控数据的产生时刻位于该故障时刻之后,可以为该监控数据对应的数据样本设置第一标签值,该第一标签值用于表示第一物理硬件发生故障。

在一个例子中,可以收集第一物理硬件的监控数据,并利用该监控数据构造数据样本(也可以称为数据样本特征),这样,可以对数据样本设置标签值。

步骤104,根据数据样本和标签值,确定待检测物理硬件是否发生故障。

具体的,可以根据该数据样本和该标签值,确定特征向量与标签值的映射关系;然后,可以根据该映射关系确定待检测物理硬件是否发生故障。

在一个例子中,根据第一物理硬件的工单数据确定第一物理硬件的故障时刻之前,还可以从第一物理硬件的工单数据中获取硬件序列号,从第一物理硬件的监控数据中获取硬件序列号,利用硬件序列号将工单数据与监控数据进行关联,从而得到同一个物理硬件(即第一物理硬件)的监控数据和工单数据。

在上述实施例中,该监控数据可以包括但不限于:smart(self-monitoringanalysisandreportingtechnology,自监测分析与报告技术)数据,和/或,kpi(keyperformanceindicator,关键性能指标)数据;物理硬件可以包括但不限于:磁盘,或者,内存,电源,或者,cpu(centralprocessingunit,中央处理器)。

在一个例子中,若未存在第二物理硬件的工单数据,则可以确定第二物理硬件的观察时间窗口,并根据观察时间窗口为第二物理硬件的数据样本设置标签值;然后,根据数据样本和标签值,确定待检测物理硬件是否发生故障。

其中,确定第二物理硬件的观察时间窗口,可以包括:根据当前时刻确定观察时间窗口的截止时刻;获取观察时间窗口的时间长度,并根据观察时间窗口的截止时刻与观察时间窗口的时间长度,确定观察时间窗口的起始时刻;然后,将该起始时刻与该截止时刻之间的时间区间确定为观察时间窗口。

其中,根据观察时间窗口为第二物理硬件的数据样本设置标签值,可以包括:若该第二物理硬件的监控数据的产生时刻位于观察时间窗口内,则禁止为该监控数据对应的数据样本设置标签值,以使该数据样本不参与到特征向量的训练过程,也就是说,在确定特征向量与标签值的映射关系时,未使用该数据样本训练所述映射关系。或者,若该第二物理硬件的监控数据的产生时刻位于观察时间窗口之前,则可以为该监控数据对应的数据样本设置第二标签值,其中,该第二标签值用于表示第二物理硬件未发生故障。

在一个例子中,上述执行顺序只是为了方便描述给出的一个示例,在实际应用中,还可以改变步骤之间的执行顺序,对此执行顺序不做限制。在其它实施例中,并不一定按照本说明书示出和描述的顺序来执行相应方法的步骤,其方法所包括的步骤可以比本说明书所描述的更多或更少。此外,本说明书中所描述的单个步骤,在其它实施例中可能被分解为多个步骤进行描述;本说明书中所描述的多个步骤,在其它实施例也可能被合并为单个步骤进行描述。

基于上述技术方案,本申请实施例中,可以预测未来一段时间窗口内,物理硬件是否发生故障,构建预测性维护体系,提前准确进行相应的扫描检测、数据备份、业务迁移等相关操作,减轻对业务的影响,减少服务器宕机和数据丢失等问题,提前进行防范和保护,提升数据中心集群的可靠性。可以增加正样本的数量,尽量均衡正样本的数量和负样本的数量,一定程度缓解了数据样本不均衡的问题。而且,可以去除负样本中的噪音数据,解决数据噪音问题。

本申请实施例提出另一种故障检测方法,参见图2所示,为故障检测方法的流程示意图,可以应用于故障检测设备(如服务器),该方法可以包括:

步骤201,若未存在物理硬件的工单数据,则确定物理硬件的观察时间窗口。

具体的,可以根据当前时刻确定观察时间窗口的截止时刻,例如,观察时间窗口的截止时刻可以为当前时刻。然后,获取观察时间窗口的时间长度,并根据观察时间窗口的截止时刻与观察时间窗口的时间长度,确定观察时间窗口的起始时刻,例如,起始时刻可以为截止时刻与该时间长度的差值。然后,可以将该起始时刻与该截止时刻之间的时间区间确定为该观察时间窗口。

在一个例子中,获取观察时间窗口的时间长度,可以包括但不限于:根据变化点检测算法获取观察时间窗口的时间长度;或者,从本地获取预先配置的观察时间窗口的时间长度。当然,上述只是两个示例,对此不做限制。

步骤202,根据观察时间窗口为该物理硬件的数据样本设置标签值。

具体的,若该物理硬件的监控数据的产生时刻位于观察时间窗口内,则禁止为该监控数据对应的数据样本设置标签值,以使该数据样本不参与到特征向量的训练过程,也就是说,在确定特征向量与标签值的映射关系时,未使用该数据样本训练所述映射关系。或者,若该物理硬件的监控数据的产生时刻位于观察时间窗口之前,则可以为该监控数据对应的数据样本设置第二标签值,其中,该第二标签值用于表示物理硬件未发生故障。

步骤203,根据数据样本和标签值,确定待检测物理硬件是否发生故障。

具体的,可以根据该数据样本和该标签值,确定特征向量与标签值的映射关系;然后,可以根据该映射关系确定待检测物理硬件是否发生故障。

在上述实施例中,该监控数据可以包括但不限于:smart数据,和/或kpi数据;物理硬件可以包括但不限于:磁盘,或者,内存,电源,或者,cpu。

在一个例子中,上述执行顺序只是为了方便描述给出的一个示例,在实际应用中,还可以改变步骤之间的执行顺序,对此执行顺序不做限制。在其它实施例中,并不一定按照本说明书示出和描述的顺序来执行相应方法的步骤,其方法所包括的步骤可以比本说明书所描述的更多或更少。此外,本说明书中所描述的单个步骤,在其它实施例中可能被分解为多个步骤进行描述;本说明书中所描述的多个步骤,在其它实施例也可能被合并为单个步骤进行描述。

基于上述技术方案,本申请实施例中,可以预测未来一段时间窗口内,物理硬件是否发生故障,构建预测性维护体系,提前准确进行相应的扫描检测、数据备份、业务迁移等相关操作,减轻对业务的影响,减少服务器宕机和数据丢失等问题,提前进行防范和保护,提升数据中心集群的可靠性。可以增加正样本的数量,尽量均衡正样本的数量和负样本的数量,一定程度缓解了数据样本不均衡的问题。而且,可以去除负样本中的噪音数据,解决数据噪音问题。

本申请实施例提出另一种故障检测方法,该方法可以包括:若存在物理硬件的工单数据,则确定该物理硬件的回溯时间窗口;例如,可以根据该物理硬件的工单数据确定该物理硬件的故障时刻,并根据该故障时刻确定该物理硬件的回溯时间窗口。然后,可以根据该回溯时间窗口为该物理硬件的数据样本设置标签值,并根据该数据样本和该标签值确定待检测物理硬件是否发生故障。

其中,上述故障检测方法的流程,可以参见上述实施例,在此不再赘述。

本申请实施例提出另一种故障检测方法,该方法可以包括:确定物理硬件的处理时间窗口,并根据该处理时间窗口为该物理硬件的数据样本设置标签值;然后,根据该数据样本和该标签值确定待检测物理硬件是否发生故障。

其中,当物理硬件是存在工单数据的第一物理硬件,则处理时间窗口可以是回溯时间窗口,根据回溯时间窗口为第一物理硬件的数据样本设置标签值。

其中,当物理硬件是未存在工单数据的第二物理硬件,则处理时间窗口可以是观察时间窗口,根据观察时间窗口为第二物理硬件的数据样本设置标签值。

其中,上述故障检测方法的流程,可以参见上述实施例,在此不再赘述。

本申请实施例提出一种数据处理方法,该方法可以包括:若存在物理硬件的工单数据,则确定该物理硬件的回溯时间窗口,并根据该回溯时间窗口为该物理硬件的数据样本设置标签值;其中,该数据样本和该标签值用于检测物理硬件是否发生故障。也就是说,通过本实施例中的数据处理方法,可以训练出数据样本和标签值的对应关系,然后,用这个对应关系进行后续的检测过程。

本申请实施例提出另一种数据处理方法,该方法可以包括:若未存在物理硬件的工单数据,则确定物理硬件的观察时间窗口,并根据观察时间窗口为该物理硬件的数据样本设置标签值;其中,该数据样本和该标签值用于检测物理硬件是否发生故障。也就是说,通过本实施例中的数据处理方法,可以训练出数据样本和标签值的对应关系,然后,用这个对应关系进行后续的检测过程。

以下结合具体应用场景,对故障检测方法进行说明。本应用场景中,以物理硬件是磁盘为例,即故障检测方法用于检测磁盘是否故障,如预测磁盘是否故障,当物理硬件是cpu、电源或内存时,其处理流程类似,后续不再赘述。

参见图3a所示,为故障检测方法的示意图,该故障检测方法可以包括离线处理和在线处理,离线处理可以包括但不限于:数据关联、样本标注、离线特征工程、模型训练等步骤,而在线处理可以包括但不限于:在线特征提取、特征库、模型部署、模型分类预测等步骤,以下对各个步骤进行详细说明。

一、离线处理过程中的数据关联,即获取监控数据和工单数据,将同一磁盘的监控数据和工单数据进行关联,得到同一个磁盘的监控数据和工单数据。

其中,监控数据可以包括但不限于:kpi数据和/或smart数据。kpi数据是磁盘的关键性能指标,如磁盘读写数据的速度、磁盘读写数据的总量、磁盘的吞吐量等,对此kpi数据不做限制。smart数据是磁盘故障预测的重要数据,如磁盘的温度、磁盘的转速、磁盘的故障扇区数量等,对此smart数据不做限制。工单数据是磁盘故障时产生的维修数据,表示磁盘发生故障,需要对磁盘进行维修,而维修系统可以处理工单数据,并安排人员对磁盘进行维修。

其中,可以定期的收集磁盘的kpi数据、smart数据和工单数据,对此收集过程不做限制,只要能够得到kpi数据、smart数据和工单数据即可。

其中,在kpi数据中包括磁盘的序列号(serial-number),在smart数据中也包括磁盘的序列号,在工单数据中也包括磁盘的序列号,基于此,针对存在工单数据的磁盘,可以基于磁盘的序列号,将该磁盘的kpi数据、smart数据和工单数据进行关联,从而得到该磁盘的kpi数据、smart数据和工单数据。针对不存在工单数据的磁盘,则可以基于磁盘的序列号,将该磁盘的kpi数据和smart数据进行关联,从而得到该磁盘的kpi数据和smart数据。

综上所述,可以将所有磁盘划分为两类磁盘,第一类磁盘具有监控数据和工单数据,由于具有工单数据,则第一类磁盘是当前已经发生故障的磁盘,后续称为磁盘a,如磁盘a1、磁盘a2、磁盘a3,以此类推。第二类磁盘具有监控数据,但不具有工单数据,由于不具有工单数据,则第二类磁盘是当前未发生故障的磁盘,后续称为磁盘b,如磁盘b1、磁盘b2、磁盘b3,以此类推。

二、离线处理过程中的样本标注,即为数据样本设置标签值,该标签值为第一标签值或者第二标签值,该第一标签值用于表示磁盘发生故障,该第二标签值用于表示磁盘未发生故障。本实施例中,采用不同的方式分别对磁盘a和磁盘b进行样本标注,以下对磁盘a和磁盘b的样本标注过程进行说明。

情况a、针对磁盘a的样本标注过程,后续以一个磁盘的处理过程为例。

由于磁盘a具有监控数据(如监控数据1-监控数据100)和工单数据,且工单数据包括磁盘a的故障时刻,因此,可以从工单数据中获取磁盘a的故障时刻,如时刻t1,然后,可以根据时刻t1确定磁盘a的回溯时间窗口。

参见图3b所示,为确定磁盘a的回溯时间窗口的示意图。首先,将时刻t1确定为回溯时间窗口的截止时刻。然后,将时刻t1与时间长度l(即回溯时间窗口的时间长度)的差值,确定为回溯时间窗口的起始时刻,如起始时刻为时刻t2。然后,将时刻t2与时刻t1之间的时间区间确定为回溯时间窗口。

其中,磁盘a的监控数据中还包括该监控数据的产生时刻,即可以获取每个监控数据的产生时刻。如图3b所示,若监控数据的产生时刻位于时刻t2与时刻t1之间的回溯时间窗口内,则为该监控数据对应的数据样本(即监控数据的数据样本特征,对此数据样本的获取方式不做限制)设置第一标签值(如1)。若监控数据的产生时刻位于时刻t2之前,则为该监控数据对应的数据样本设置第二标签值(如0)。若监控数据的产生时刻位于时刻t1之后,则为该监控数据对应的数据样本设置第一标签值。

假设在时刻t2之前的时刻t3,收集到磁盘a的监控数据1,则为监控数据1对应的数据样本设置第二标签值。假设在时刻t2与时刻t1之间的时刻t4,收集到磁盘a的监控数据2,则为监控数据2对应的数据样本设置第一标签值。若磁盘a故障后,磁盘a没有立即下线或被替换,则仍然能够收集到磁盘a的监控数据,假设在时刻t1之后的时刻t5,收集到磁盘a的监控数据3,则为监控数据3对应的数据样本设置第一标签值。综上所述,可以为磁盘a的每个数据样本设置第一标签值或者第二标签值。而且,针对产生时刻位于时刻t2与时刻t1之间的回溯时间窗口内的监控数据对应的数据样本,是为该数据样本设置第一标签值,而不是为该数据样本设置第二标签值。

在一个例子中,可以将具有第一标签值(表示磁盘发生故障)的数据样本称为正样本,并将具有第二标签值(表示磁盘未发生故障)的数据样本称为负样本。在后续训练过程中,为了提高训练结果的准确性,正样本的数量和负样本的数量应该相同或者近似相同,即二者的差值不大于预设数值(根据经验配置)。在实际应用中,发生故障的磁盘数量会小于未发生故障的磁盘数量,即正样本的数量会小于负样本的数量,导致正样本和负样本不均衡的问题。

基于此,本申请实施例中,针对回溯时间窗口内的数据样本,为该数据样本设置第一标签值,而不是为该数据样本设置第二标签值,从而可以增加正样本的数量,并减少负样本的数量,从而缓解正样本和负样本不均衡的问题。

其中,为回溯时间窗口内的数据样本设置第一标签值,其原因在于:磁盘a在时刻t1发生故障,那么,磁盘a在时刻t2到时刻t1的这段时间内,实际上已经处于亚健康状态,通过将这段时间内的数据样本识别为故障磁盘的数据样本,从而更加准确的表达磁盘a的亚健康状态。这样,既增加正样本的数量,减少负样本的数量,又可以过滤负样本中的数据噪音,增加样本的准确性。

例如,若为回溯时间窗口内的数据样本设置第二标签值,则由于磁盘a已经处于亚健康状态,磁盘a的特征已经接近故障特征,无法准确表达正常磁盘的特征,因此,为数据样本设置第二标签值(表示磁盘未发生故障),将会导致该数据样本是负样本中的数据噪音。而本申请实施例中,通过为回溯时间窗口内的数据样本设置第一标签值,可以有效过滤负样本中的数据噪音。

在一个例子中,为了获取回溯时间窗口的时间长度,则可以采用如下方式:

方式1、从本地获取预先配置的回溯时间窗口的时间长度。

例如,用户可以根据经验配置回溯时间窗口的时间长度,如15天等,因此,可以从本地直接获取预先配置的回溯时间窗口的时间长度。

方式2、根据变化点检测算法获取回溯时间窗口的时间长度。

其中,变化点检测(changedetection)是指时间序列数据中,数据的概率分布发生改变的时间点,数据分布变化可能考虑和关注的指标包括时间序列的均值、方差、相关性或频谱密度等。因此,通过发现故障磁盘的时间序列数据的分布变化点,并对不同故障磁盘的属性进行重要性分析,采用统计量(例如中位数、均值、其它分位数等)方式,确定回溯时间窗口的时间长度。

在一个例子中,可以分析故障磁盘的smart属性(如磁盘的温度、磁盘的转速、磁盘的故障扇区数量等故障预测数据),并确定smart属性的变化点,并根据smart属性的变化点确定回溯时间窗口的时间长度。例如,根据smart属性的变化时刻与故障磁盘的故障时刻确定回溯时间窗口的时间长度。

其中,根据smart属性的变化时刻与故障磁盘的故障时刻确定回溯时间窗口的时间长度,可以包括:可以获取多个故障磁盘的smart属性的变化时刻与故障时刻,针对每个故障磁盘,利用该故障磁盘的smart属性的变化时刻与故障时刻,确定该故障磁盘的子时间长度。然后,对所述多个故障磁盘的子时间长度取中位数或者取均值,从而得到回溯时间窗口的时间长度。

例如,以smart属性是磁盘的温度为例,假设磁盘1的温度变化曲线如图3c所示,时刻b是磁盘1的故障时刻。从图3c可以看出,从时刻a开始,磁盘1的温度变化开始加剧,因此,将时刻a作为温度属性的变化时刻,这样,时刻a与时刻b之间的时间长度,就是磁盘1的子时间长度。此外,还可以基于其它smart属性(如磁盘的转速)确定磁盘1的子时间长度,还可以基于smart属性确定其它故障磁盘的子时间长度,对此不再赘述。这样,通过对所有子时间长度取中位数或者取均值,就可以得到回溯时间窗口的时间长度。

当然,上述只是获取回溯时间窗口的时间长度的一个示例,还可以采用其它算法(如相似算法等)获取回溯时间窗口的时间长度,对此不做限制。

情况b、针对磁盘b的样本标注过程,后续以一个磁盘的处理过程为例。

由于磁盘b具有监控数据(如监控数据1-监控数据100),但是不具有工单数据,因此,磁盘b当前未发生故障,但是,磁盘b当前有可能处于亚健康状态,也有可能不处于亚健康状态,因此,为了排除亚健康状态下的数据样本,本实施例中,可以根据当前时刻(如时刻ta)确定磁盘b的观察时间窗口。

参见图3d所示,为确定磁盘b的观察时间窗口的示意图。将当前时刻(如时刻ta)确定为观察时间窗口的截止时刻。将时刻ta与时间长度m(即观察时间窗口的时间长度)的差值,确定为观察时间窗口的起始时刻,如起始时刻为时刻tb。然后,将时刻tb与时刻ta之间的时间区间确定为观察时间窗口。

其中,磁盘b的监控数据中还包括该监控数据的产生时刻,即可以获取每个监控数据的产生时刻。如图3d所示,若监控数据的产生时刻位于时刻tb与时刻ta之间的观察时间窗口内,则禁止为该监控数据对应的数据样本设置标签值,以使该监控数据对应的数据样本不参与到特征向量的训练过程,即后续训练过程不使用该数据样本。若监控数据的产生时刻位于时刻tb之前,则为该监控数据对应的数据样本设置第二标签值(如0)。

例如,假设在时刻tb之前的时刻tc,收集到磁盘b的监控数据1,为监控数据1对应的数据样本设置第二标签值。假设在时刻tb与时刻ta之间的时刻td,收集到磁盘b的监控数据2,禁止为监控数据2对应的数据样本设置标签值。综上所述,针对产生时刻位于时刻tb与时刻ta之间的观察时间窗口内的数据样本,禁止为该数据样本设置标签值,而不是为数据样本设置第二标签值。

在一个例子中,可以将具有第一标签值的数据样本称为正样本,并将具有第二标签值的数据样本称为负样本。在实际应用中,正样本的数量通常会小于负样本的数量,导致正样本和负样本不均衡的问题。基于此,本申请实施例中,针对观察时间窗口内的数据样本,可以禁止为该数据样本设置标签值,从而可以减少负样本的数量,并有效缓解正样本和负样本不均衡的问题。

其中,禁止为观察时间窗口内的数据样本设置标签值,其原因在于:虽然磁盘b当前未发生故障,但是,磁盘b当前有可能处于亚健康状态,也有可能不处于亚健康状态。若磁盘b未来一段时间内发生故障,则说明磁盘b在时刻tb到时刻ta的这段时间内,已经处于亚健康状态,在磁盘b发生故障后,参见情况a的样本标注过程,可以回溯到观察时间窗口内的数据样本,并为观察时间窗口内的数据样本设置第一标签值,从而更加准确的表达磁盘b的亚健康状态。若磁盘b未来一段时间内未发生故障,则说明磁盘b在时刻tb到时刻ta的这段时间内,不处于亚健康状态,随着时间的推移,tb到时刻ta的这段时间内的数据样本,将被从观察时间窗口内移除,并可以为这些数据样本设置第二标签值。综上所述,上述方式可以保证数据样本被设置标签值。

在一个例子中,为了获取观察时间窗口的时间长度,则可以采用如下方式:

方式1、从本地获取预先配置的观察时间窗口的时间长度。

例如,用户可以根据经验配置观察时间窗口的时间长度,如15天等,因此,可以从本地直接获取预先配置的观察时间窗口的时间长度。

方式2、根据变化点检测算法获取观察时间窗口的时间长度。

在一个例子中,可以分析故障磁盘的smart属性(如磁盘的温度、磁盘的转速、磁盘的故障扇区数量等故障预测数据),并确定smart属性的变化点,并根据smart属性的变化点确定观察时间窗口的时间长度。例如,根据smart属性的变化时刻与故障磁盘的故障时刻确定观察时间窗口的时间长度。

其中,根据变化点检测算法获取观察时间窗口的时间长度的方式,参见根据变化点检测算法获取回溯时间窗口的时间长度的方式,在此不再赘述。

方式3、将回溯时间窗口的时间长度,确定为观察时间窗口的时间长度。

方式4、对回溯时间窗口的时间长度进行调整,对此调整方式不做限制,如增加回溯时间窗口的时间长度(如增加2天)、降低回溯时间窗口的时间长度(如降低3天)等,将调整后的时间长度确定为观察时间窗口的时间长度。

综上所述,在采用情况a和情况b对数据样本设置标签值后,可以将具有标签值的数据样本添加到训练样本,而不具有标签值的数据样本则不添加到训练样本,然后,可以将训练样本输出给离线处理过程中的离线特征工程。

三、离线处理过程中的离线特征工程,即根据数据样本构造特征集合,该特征集合可以包括多个特征,并根据该特征集合确定特征向量;或者,可以根据该数据样本和该标签值构造特征集合,该特征集合可以包括多个特征,并根据该特征集合确定特征向量。具体的,根据该特征集合确定特征向量,可以包括但不限于:可以将该特征集合包括的所有特征均确定为特征向量;或者,可以从该特征集合包括的所有特征中筛选出部分特征向量,对此不做限制。

在一个例子中,可以将数据样本和标签值输出给特定训练模型,该特定训练模型用于根据数据样本构造特征集合,或者,根据数据样本和标签值构造特征集合,然后,可以获取该特定训练模型的输出结果,该输出结果可以包括特征集合,并根据该输出结果确定特征集合,该特征集合可以包括多个特征。

特定训练模型包括特征工程中的任意训练模型,对此特定训练模型的类型不做限制,只要特定训练模型能够构建特征即可,该特定训练模型用于从大量输入数据中找出对因变量有明显影响作用的特征,从而可以实现特征构建。

在一个例子中,特征集合中的特征包括但不限于以下之一或任意组合:统计特征;时域特征;模型特征;频域特征;经验特征。为了使特征集合中包括统计特征,则特定训练模型需要具有构建统计特征的功能;为了使特征集合中包括时域特征,则特定训练模型需要具有构建时域特征的功能;为了使特征集合中包括模型特征,则特定训练模型需要具有构建模型特征的功能;为了使特征集合中包括频域特征,则特定训练模型需要具有构建频域特征的功能;为了使特征集合中包括经验特征,则特定训练模型需要具有构建经验特征的功能。

参见图3e所示,为特定训练模型的一个示意图,该特定训练模型可以用于构建统计特征、时域特征、模型特征、频域特征、经验特征,也就是说,在将数据样本输出给特定训练模型后,特定训练模型可以构建与该数据样本对应的统计特征、时域特征、模型特征、频域特征、经验特征。

其中,统计特征可以包括均值、方差、标准差、抖动等,对此统计特征不做限制。特定训练模型获取到输入数据后,可以利用输入数据确定统计特征。

时域特征可以包括滑动平均值、指数加权滑动平均值等,对此时域特征不做限制。特定训练模型在获取到输入数据后,可以利用输入数据确定时域特征。

模型特征可以包括基于序列模式构造的特征、基于cnn构造的特征、基于vae(variationalautoencoder,变分自编码器)构造的特征、基于gan(generativeadversarialnetwork,生成对抗网络)构造的特征、基于vae和gan构造的特征、基于lstm(longshorttermmemory,长短期记忆)构造的特征等,对此不做限制。特定训练模型获取到输入数据后,可以利用输入数据确定模型特征。

频域特征可以包括频谱特征、频率特征等,可以通过小波变化、傅立叶变换等,将时域特征转换为频域特征,对此频域特征不做限制。特定训练模型获取到输入数据后,利用输入数据确定时域特征,并将时域特征转换为频域特征。

经验特征是用户配置的任意特征,对此不做限制,是用户根据经验配置的特征。特定训练模型在获取到输入数据后,可以确定输入数据的经验特征。

经过上述处理,特定训练模型可以产生特征集合,该特征集合可以包括大量特征,如1000个特征。然后,可以将特征集合包括的所有特征均确定为特征向量,或者,从特征集合包括的所有特征中筛选出部分特征向量,如从1000个特征中筛选出20个特征,将这20个特征确定为特征向量。本实施例中,参见图3e所示,以从特征集合包括的所有特征中筛选出部分特征向量为例。

为了从特征集合包括的所有特征中筛选出部分特征向量,则可以采用以下方式的一种或者多种:基于统计相关性,从特征集合包括的所有特征中筛选出部分特征向量;基于统计模型,从特征集合包括的所有特征中筛选出部分特征向量;基于机器学习模型,从特征集合包括的所有特征中筛选出部分特征向量;基于变化点检测模型,从特征集合包括的所有特征中筛选出部分特征向量;基于特定的策略,从特征集合包括的所有特征中筛选出部分特征向量。

其中,基于统计相关性,从特征集合包括的所有特征中筛选出部分特征向量,可以包括:从特征集合包括的所有特征中,查询到具有相关性的特征,并对具有相关性的特征进行过滤,然后,可以将剩余的特征确定为特征向量。

其中,基于统计模型,从特征集合包括的所有特征中筛选出部分特征向量,可以包括:将特征集合包括的所有特征输出给统计模型,由统计模型对这些特征进行处理,具体处理方式不做限制;然后,可以获取该统计模型的输出结果,该输出结果可以包括部分特征,这样,可以将所述部分特征确定为特征向量。

其中,基于机器学习模型,从特征集合包括的所有特征中筛选出部分特征向量,可以包括:将特征集合包括的所有特征输出给机器学习模型,由机器学习模型对这些特征进行处理,具体处理方式不做限制;获取该机器学习模型的输出结果,该输出结果可以包括部分特征,并将所述部分特征确定为特征向量。

其中,基于变化点检测模型,从特征集合包括的所有特征中筛选出部分特征向量,可以包括:在特征集合包括的所有特征中,保留发生明显变化的特征,并过滤未发生明显变化的特征,这样,可以将剩余的特征确定为特征向量。

其中,基于特定的策略,从特征集合包括的所有特征中筛选出部分特征向量,可以包括:基于用户设置的特定策略(用户根据经验配置,对此不做限制),从特征集合包括的所有特征中选择特征,将选择的特征确定为特征向量。

四、离线处理过程中的模型训练。其中,在离线特征工程阶段,输入数据是数据样本和标签值,在该阶段的处理过程中,可以根据数据样本构造特征集合,并根据该特征集合确定特征向量,因此,输出数据是特征向量和标签值。在模型训练阶段,输入数据是特征向量和标签值,在该阶段的处理过程中,可以根据特征向量和标签值,确定特征向量与标签值的映射关系,该映射关系也就是一个模型,因此,输出数据是特征向量与标签值的映射关系。

例如,假设输入数据是特征向量a与第一标签值,则可以根据特征向量a与第一标签值,确定特征向量a与第一标签值的映射关系,该映射关系表示特征向量a与第一标签值之间的模型。又例如,假设输入数据是特征向量b与第二标签值,则可以根据特征向量b与第二标签值,确定特征向量b与第二标签值的映射关系,该映射关系表示特征向量b与第二标签值之间的模型。

在一个例子中,基于大量输入数据可以训练出一个最终模型,如模型r,该模型r可以包括特征向量与标签值的映射关系,如特征向量a与第一标签值的映射关系,特征向量b与第二标签值的映射关系,然后,将模型r部署到在线阶段,以利用模型r预测磁盘是否发生故障,预测过程参见后续实施例。其中,模型r可以包括但不限于cnn(convolutionalneuralnetwork,卷积神经网络)模型、线性回归模型、随机森林模型、梯度提升树模型、xgboost(extremegradientboosting,极值梯度提升)模型,对此模型r的类型不做限制。

五、在线处理过程中的在线特征提取。具体的,针对待检测的磁盘,可以获取该磁盘的监控数据,并根据该监控数据确定该磁盘的硬件特征。

其中,在线处理过程中的监控数据,可以是全部数据,也可以是增量数据。例如,在离线处理过程中,是利用历史监控数据进行处理,如历史监控数据是过去60天的监控数据,但不包括当天的监控数据,而在线处理过程中的监控数据,可以是当天的监控数据和过去59天的监控数据,也可以是当天的监控数据。

其中,在线处理过程中的在线特征提取,与离线处理过程中的离线特征工程类似,在此不再重复赘述,二者的不同之处在于:在离线处理过程中的离线特征工程,其输入数据可以是历史监控数据(如过去60天的监控数据)和标签值,而在线处理过程中的在线特征提取,其输入数据可以是当天的监控数据,或者当天的监控数据和过去59天的监控数据,且输入数据不包括标签值。

六、在线处理过程中的特征库。在离线处理过程中,还可以将特征向量存储到特征库,基于此,在线处理过程中,在得到磁盘的硬件特征后,可以根据该硬件特征和特征库中的特征向量,确定在线处理过程中的特征向量,并可以将在线处理过程中的特征向量输出给模型进行后续处理。或者,在线处理过程中,在得到磁盘的硬件特征后,可以将该硬件特征确定为在线处理过程中的特征向量,并可以将在线处理过程中的特征向量输出给模型进行后续处理。

例如,假设在线处理过程中的监控数据,是当天的监控数据和过去59天的监控数据,则该监控数据对应的硬件特征,是60天的监控数据对应的硬件特征,因此,可以将该硬件特征确定为在线处理过程中的特征向量,并将在线处理过程中的特征向量输出给模型进行后续处理。假设在线处理过程中的监控数据,是当天的监控数据,则该监控数据对应的硬件特征,是当天的监控数据对应的硬件特征,因此,可以根据该硬件特征和特征库中的特征向量,确定在线处理过程中的特征向量,并将在线处理过程中的特征向量输出给模型进行后续处理。

其中,在根据该硬件特征和特征库中的特征向量,确定在线处理过程中的特征向量时,是一个增量更新过程,通过滑动时间窗的方式,将新的特征添加到特征向量,并去除特征向量中已经无效的特征。例如,特征库中的特征向量a是过去60天的方差和,即第1天的监控数据对应的方差、第2天的监控数据对应的方差、…、与第60天的监控数据对应的方差之和,假设硬件特征是当天的监控数据(即第61天的监控数据)对应的方差,则将特征向量a减去第1天的监控数据对应的方差,再加上当天的监控数据对应的方差,可以得到特征向量b,而特征向量b就是在线处理过程中的特征向量,并将特征向量b输出给模型进行后续处理。而且,还可以将特征库中的特征向量a更新为特征向量b。

当然,上述实现方式,只是“根据该硬件特征和特征库中的特征向量,确定在线处理过程中的特征向量”的一个示例,对此不做限制,只要根据该硬件特征和特征库中的特征向量,可以确定在线处理过程中的特征向量即可。

七、在线处理过程中的模型部署和模型分类预测。在离线处理过程中,可以训练一个模型,如模型r,并部署模型r,这样,可以通过模型r预测磁盘是否发生故障。具体的,可以将在线处理过程中的特征向量输出给模型r,由于模型r用于记录特征向量和标签值的映射关系,因此,针对在线处理过程中的特征向量,可以得到与该特征向量对应的标签值。例如,若标签值是第一标签值,则确定磁盘发生故障;若标签值是第二标签值,则确定磁盘未发生故障。

其中,在磁盘未发生故障时,则可以将该磁盘的监控数据(如当天的监控数据)存储为历史监控数据,并参与到离线处理的数据关联、样本标注、离线特征工程、模型训练等步骤,在此不再赘述。在磁盘发生故障时,则可以将该磁盘的监控数据(如当天的监控数据)存储为历史监控数据,并参与到离线处理的数据关联、样本标注、离线特征工程、模型训练等步骤,在此不再赘述;以及,产生工单数据,该工单数据可以包括该磁盘的序列号、该磁盘的故障时间等信息,且该工单数据可以参与到离线处理的数据关联、样本标注等步骤。

基于与上述方法同样的申请构思,本申请实施例还提供一种故障检测装置,如图4所示,为所述故障检测装置的结构图,所述装置包括:确定模块41,用于根据第一物理硬件的工单数据确定所述第一物理硬件的故障时刻;根据所述故障时刻确定所述第一物理硬件的回溯时间窗口;设置模块42,用于根据所述回溯时间窗口为所述第一物理硬件的数据样本设置标签值;所述确定模块41,还用于根据所述数据样本和所述标签值,确定待检测物理硬件是否发生故障。

所述设置模块42根据所述回溯时间窗口为所述第一物理硬件的数据样本设置标签值时具体用于:若所述第一物理硬件的监控数据的产生时刻位于所述回溯时间窗口内,则为所述监控数据对应的数据样本设置第一标签值,所述第一标签值表示所述第一物理硬件发生故障;若所述第一物理硬件的监控数据的产生时刻位于所述回溯时间窗口之前,则为所述监控数据对应的数据样本设置第二标签值,所述第二标签值表示所述第一物理硬件未发生故障。

基于与上述方法同样的申请构思,本申请实施例还提供一种故障检测设备,包括:处理器和机器可读存储介质;其中,所述机器可读存储介质上存储有若干计算机指令,所述处理器执行所述计算机指令时进行如下处理:

根据第一物理硬件的工单数据确定所述第一物理硬件的故障时刻;

根据所述故障时刻确定所述第一物理硬件的回溯时间窗口;

根据所述回溯时间窗口为所述第一物理硬件的数据样本设置标签值;

根据所述数据样本和所述标签值,确定待检测物理硬件是否发生故障。

本申请实施例还提供一种机器可读存储介质,所述机器可读存储介质上存储有若干计算机指令,所述计算机指令被执行时进行如下处理:

根据第一物理硬件的工单数据确定所述第一物理硬件的故障时刻;

根据所述故障时刻确定所述第一物理硬件的回溯时间窗口;

根据所述回溯时间窗口为所述第一物理硬件的数据样本设置标签值;

根据所述数据样本和所述标签值,确定待检测物理硬件是否发生故障。

基于与上述方法同样的申请构思,本申请实施例还提供一种故障检测装置,如图5所示,为所述故障检测装置的结构图,所述装置可以包括:

确定模块51,用于若未存在物理硬件的工单数据,则确定所述物理硬件的观察时间窗口;设置模块52,用于根据观察时间窗口为所述物理硬件的数据样本设置标签值;所述确定模块51,还用于根据所述数据样本和所述标签值,确定待检测物理硬件是否发生故障。

所述设置模块52根据所述观察时间窗口为所述物理硬件的数据样本设置标签值时具体用于:若所述第二物理硬件的监控数据的产生时刻位于所述观察时间窗口内,则禁止为所述监控数据对应的数据样本设置标签值,以使所述数据样本不参与到特征向量的训练过程;若所述第二物理硬件的监控数据的产生时刻位于所述观察时间窗口之前,则为所述监控数据对应的数据样本设置第二标签值,所述第二标签值表示所述物理硬件未发生故障。

基于与上述方法同样的申请构思,本申请实施例还提供一种故障检测设备,包括:处理器和机器可读存储介质;其中,所述机器可读存储介质上存储有若干计算机指令,所述处理器执行所述计算机指令时进行如下处理:

若未存在物理硬件的工单数据,则确定所述物理硬件的观察时间窗口;

根据所述观察时间窗口为所述物理硬件的数据样本设置标签值;

根据所述数据样本和所述标签值,确定待检测物理硬件是否发生故障。

本申请实施例还提供一种机器可读存储介质,所述机器可读存储介质上存储有若干计算机指令,所述计算机指令被执行时进行如下处理:

若未存在物理硬件的工单数据,则确定所述物理硬件的观察时间窗口;

根据所述观察时间窗口为所述物理硬件的数据样本设置标签值;

根据所述数据样本和所述标签值,确定待检测物理硬件是否发生故障。

参见图6所示,为本申请实施例中提出的故障检测设备的结构图,所述故障检测设备60可以包括:处理器61,网络接口62,总线63,存储器64。

存储器64可以是任何电子、磁性、光学或其它物理存储装置,可以包含或存储信息,如可执行指令、数据等等。例如,存储器64可以是:ram(radomaccessmemory,随机存取存储器)、易失存储器、非易失性存储器、闪存、存储驱动器(如硬盘驱动器)、固态硬盘、任何类型的存储盘(如光盘、dvd等)。

上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。

本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可以由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其它可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其它可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

而且,这些计算机程序指令也可以存储在能引导计算机或其它可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或者多个流程和/或方框图一个方框或者多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其它可编程数据处理设备上,使得在计算机或者其它可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其它可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1