一种存储设备故障检测方法及相关装置与流程

文档序号:20604506发布日期:2020-05-01 21:57阅读:313来源:国知局
一种存储设备故障检测方法及相关装置与流程

本申请涉及存储设备技术领域,特别涉及一种存储设备故障检测方法、存储设备故障检测装置、存储服务器以及计算机可读存储介质。



背景技术:

存储系统是指计算机中由存放程序和数据的各种存储设备、控制部件及管理信息调度的设备(硬件)和算法(软件)所组成的系统。计算机的主存储器不能同时满足存取速度快、存储容量大和成本低的要求,在计算机中必须有速度由慢到快、容量由大到小的多级层次存储器,以最优的控制调度算法和合理的成本,构成具有性能可接受的存储系统。

在存储系统中,设备突然故障是制约系统稳定性和可靠性的主要因素之一,如何尽早预测出系统故障是实现主动预防提升系统性能的关键。基于机器学习方法构建故障预测分类模型就是当下最主流的做法。然而当前的研究没有关注故障数据的时序性问题,故障不是突然出现的,而是存在前后时间上的因果递进关系,如何能够挖掘出这种前后关系,对故障预测的意义重大。存储设备包含了硬盘、ssd、非易失内存等介质。

可见,为了提高存储设备的可靠性需要对存储设备的故障进行检测,而现有技术中一般通过存储设备中个别状态信息进行判断,根据判断结果对存储设备的故障进行预测。但是,现有技术中对存储设备的故障进行检测的准确性和精度比较差,没有办法对存储设备的故障进行准确得预知,进而无法对存储设备的故障进行提前维护,降低了存储设备的可靠性和稳定性。

因此,如何提高存储设备故障预测的准确性是本领域技术人员关注的重点问题。



技术实现要素:

本申请的目的是提供一种存储设备故障检测方法、存储设备故障检测装置、存储服务器以及计算机可读存储介质,通过先进行采样处理提高样本的数据量,然后训练出lstm检测模型对待检测数据进行检测处理,得到故障检测结果,提高了故障预测的准确性和精度。

为解决上述技术问题,本申请提供一种存储设备故障检测方法,包括:

对原始存储设备特征数据进行滑动窗口步长采样处理,得到三维训练矩阵和一维标签矩阵;

采用keras神经网络库根据所述三维训练矩阵和所述一维标签矩阵进行长短时记忆网络训练,得到lstm检测模型;

采用所述lstm检测模型对待检测数据进行检测处理,得到故障检测结果。

可选的,对原始存储设备特征数据进行滑动窗口步长采样处理,得到三维训练矩阵和一维标签矩阵,包括:

根据突变点检测算法对所述原始存储设备特征数据进行选择,得到原始特征值;

将所述原始特征值划分为训练集和测试集;

根据磁盘smart规则、预设滑动大小以及预设步长对所述训练集和所述测试集进行样本点采样,得到所述三维训练矩阵;

对所述三维训练矩阵打标签处理,得到所述一维标签矩阵。

可选的,根据磁盘smart规则、预设滑动大小以及预设步长对所述训练集和所述测试集进行样本点采样,得到所述三维训练矩阵,包括:

根据所述smart规则对所述训练集和所述测试集进行数据截取,得到smart特征值;

按照所述预设滑动大小和所述预设步长对所述smart特征值进行滑动窗口采样处理,得到所述三维训练矩阵。

可选的,采用keras神经网络库根据所述三维训练矩阵和所述一维标签矩阵进行长短时记忆网络训练,得到lstm检测模型,包括:

采用所述keras神经网络库构建出序贯模型;

对所述序贯模型添加lstm隐藏层、全连接层以及输出层,并进行配置,得到长短时记忆网络;

根据所述三维训练矩阵和所述一维标签矩阵对所述长短时记忆网络进行训练,得到所述lstm检测模型。

可选的,采用所述lstm检测模型对待检测数据进行检测处理,得到故障检测结果,包括:

对所述待检测数据进行特征提取处理,得到特征数据;

采用所述lstm检测模型对所述特征数据进行计算,得到所述故障检测结果。

本申请还提供一种存储设备故障检测装置,包括:

特征采样模块,用于对原始存储设备特征数据进行滑动窗口步长采样处理,得到三维训练矩阵和一维标签矩阵;

模型训练模块,用于采用keras神经网络库根据所述三维训练矩阵和所述一维标签矩阵进行长短时记忆网络训练,得到lstm检测模型;

故障检测模块,用于采用所述lstm检测模型对待检测数据进行检测处理,得到故障检测结果。

可选的,所述特征采样模块,包括:

特征选择单元,用于根据突变点检测算法对所述原始存储设备特征数据进行选择,得到原始特征值;

特征数据划分单元,用于将所述原始特征值划分为训练集和测试集;

样本点采样单元,用于根据磁盘smart规则、预设滑动大小以及预设步长对所述训练集和所述测试集进行样本点采样,得到所述三维训练矩阵;

标签处理单元,用于对所述三维训练矩阵打标签处理,得到所述一维标签矩阵。

可选的,所述模型训练模块,包括:

模型构建单元,用于采用所述keras神经网络库构建出序贯模型;

网络配置单元,用于对所述序贯模型添加lstm隐藏层、全连接层以及输出层,并进行配置,得到长短时记忆网络;

网络训练单元,用于根据所述三维训练矩阵和所述一维标签矩阵对所述长短时记忆网络进行训练,得到所述lstm检测模型。

本申请还提供一种存储服务器,包括:

存储器,用于存储计算机程序;

处理器,用于执行所述计算机程序时实现如上所述的存储设备故障检测方法的步骤。

本申请还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的存储设备故障检测方法的步骤。

本申请所提供的一种存储设备故障检测方法,包括:对原始存储设备特征数据进行滑动窗口步长采样处理,得到三维训练矩阵和一维标签矩阵;采用keras神经网络库根据所述三维训练矩阵和所述一维标签矩阵进行长短时记忆网络训练,得到lstm检测模型;采用所述lstm检测模型对待检测数据进行检测处理,得到故障检测结果。

通过先对原始存储设备特征数据进行滑动窗口步长采样处理,提高训练数据的数据量,最后得到三维训练矩阵和一维标签矩阵,然后进行长短时记忆网络训练,得到lstm检测模型,最后采用该lstm检测模型对待检测数据进行检测处理,得到故障检测结果,实现了采用lstm模型对存储设备故障状态进行检测,提高了存储设备故障检测的准确率,进而再对存储设备进行有效的维护操作,提高了存储设备执行时的可靠性和稳定性。

本申请还提供一种存储设备故障检测装置、存储服务器以及计算机可读存储介质,具有以上有益效果,在此不做赘述。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

图1为本申请实施例所提供的一种存储设备故障检测方法的流程图;

图2为本申请实施例所提供的一种存储设备故障检测装置的结构示意图。

具体实施方式

本申请的核心是提供一种存储设备故障检测方法、存储设备故障检测装置、存储服务器以及计算机可读存储介质,通过先进行采样处理提高样本的数据量,然后训练出lstm检测模型对待检测数据进行检测处理,得到故障检测结果,提高了故障预测的准确性和精度。

为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

现有技术中,为了提高存储设备的可靠性需要对存储设备的故障进行检测,而现有技术中一般通过存储设备中个别状态信息进行判断,根据判断结果对存储设备的故障进行预测。但是,现有技术中对存储设备的故障进行检测的准确性和精度比较差,没有办法对存储设备的故障进行准确得预知,进而无法对存储设备的故障进行提前维护,降低了存储设备的可靠性和稳定性。

因此,本申请提供了一种存储设备故障检测方法,通过先对原始存储设备特征数据进行滑动窗口步长采样处理,提高训练数据的数据量,最后得到三维训练矩阵和一维标签矩阵,然后进行长短时记忆网络训练,得到lstm检测模型,最后采用该lstm检测模型对待检测数据进行检测处理,得到故障检测结果,实现了采用lstm模型对存储设备故障状态进行检测,提高了存储设备故障检测的准确率,进而再对存储设备进行有效的维护操作,提高了存储设备执行时的可靠性和稳定性。

请参考图1,图1为本申请实施例所提供的一种存储设备故障检测方法的流程图。

本实施例中,该方法可以包括:

s101,对原始存储设备特征数据进行滑动窗口步长采样处理,得到三维训练矩阵和一维标签矩阵;

本步骤旨在对原始存储设备特征数据进行采样处理,得到用于训练和测试的数据,即三维训练矩阵和一维标签矩阵。其中,执行的采样处理主要是基于滑动窗口和步长采样处理。可以有效的扩充正样本的数据量,解决了样本不平衡问题。

具体的,本步骤中进行滑动串口步长采样处理的方式可以包括:

步骤1,根据突变点检测算法对原始存储设备特征数据进行选择,得到原始特征值;

步骤2,将原始特征值划分为训练集和测试集;

步骤3,根据磁盘smart规则、预设滑动大小以及预设步长对训练集和测试集进行样本点采样,得到三维训练矩阵;

步骤4,对三维训练矩阵打标签处理,得到一维标签矩阵。

其中,采用的磁盘smart规则,全称为“self-monitoringanalysisandreportingtechnology”,即“自我监测、分析及报告技术”。是一种自动的硬盘状态检测与预警系统和规范。通过在硬盘硬件内的检测指令对硬盘的硬件如磁头、盘片、马达、电路的运行情况进行监控、记录并与厂商所设定的预设安全值进行比较,若监控情况将或已超出预设安全值的安全范围,就可以通过主机的监控硬件或软件自动向用户做出警告并进行轻微的自动修复,以提前保障硬盘数据的安全。除一些出厂时间极早的硬盘外,现在大部分硬盘均配备该项技术。可见,通过该磁盘smart规则可以从数据中提取出有效的特征数据。

其中,步骤3可以包括:

首先,根据smart规则对训练集和测试集进行数据截取,得到smart特征值;然后,按照预设滑动大小和预设步长对smart特征值进行滑动窗口采样处理,得到三维训练矩阵。

s102,采用keras神经网络库根据三维训练矩阵和一维标签矩阵进行长短时记忆网络训练,得到lstm检测模型;

在s101的基础上,本步骤旨在采用keras神经网络库根据三维训练矩阵和一维标签矩阵进行长短时记忆网络训练,得到lstm检测模型;

其中,keras神经网络库是一个由python编写的开源人工神经网络库,可以作为tensorflow、microsoft-cntk和theano的高阶应用程序接口,进行深度学习模型的设计、调试、评估、应用和可视化。可见,本步骤中采用keras可以在python的基础上构建出对应的模型,然后在该模型的基础上配置相应的网络结果,得到符合要求的待训练网络,最后进行训练操作。

因此,可选的,本步骤中进行网络训练的过程可以包括:

步骤1,采用keras神经网络库构建出序贯模型;

步骤2,对序贯模型添加lstm隐藏层、全连接层以及输出层,并进行配置,得到长短时记忆网络;

步骤3,根据三维训练矩阵和一维标签矩阵对长短时记忆网络进行训练,得到lstm检测模型。

可见,本步骤中训练出的是lstm(longshort-termmemory长短时记忆网络)网络模型,采用该网络可以深度学习数据的前后时序依赖关系,相当于变长窗口的特征提取,与根据经验进行固定窗口的特征提取相比,提高了准确性。

s103,采用lstm检测模型对待检测数据进行检测处理,得到故障检测结果。

在s102的基础上,本步骤旨在采用训练好的lstm检测模型对待检测数据进行检测处理,得到故障检测结果。具体的,可以按照预设周期从存储设备中获取到待检测数据,然后采用该lstm检测模型对待检测数据进行检测处理,得到最终的检测结果。

此外,还可以包括:根据故障检测结果对lstm检测模型进行进一步的调整和更新操作。

可选的,本步骤可以包括:

步骤1,对待检测数据进行特征提取处理,得到特征数据;

步骤2,采用lstm检测模型对特征数据进行计算,得到故障检测结果。

可见,本可选方案主要是先提取出待检测数据的特征数据,然后采用lstm检测模型对特征数据进行计算处理,最后得到故障检测结果。

综上,本实施例通过先对原始存储设备特征数据进行滑动窗口步长采样处理,提高训练数据的数据量,最后得到三维训练矩阵和一维标签矩阵,然后进行长短时记忆网络训练,得到lstm检测模型,最后采用该lstm检测模型对待检测数据进行检测处理,得到故障检测结果,实现了采用lstm模型对存储设备故障状态进行检测,提高了存储设备故障检测的准确率,进而再对存储设备进行有效的维护操作,提高了存储设备执行时的可靠性和稳定性。

以下通过另一具体的实施例,对本申请提供的一种存储设备故障检测方法,做进一步说明。

本实施例中,该方法可以包括:

首先根据突变点检测算法选择原始特征值,然后以8:2比例划分训练集和测试集,对训练集进行采样,输出训练矩阵,然后利用keras构建lstm网络模型,最后进行模型训练并预测。

其中,特征选择的过程,主要包括以下几个步骤:

选取如下12个smart特征值:

5_raw/5_norm/183_raw/183_norm/184_raw/184_norm/187_raw/187_norm/188_raw/188_norm/197_raw/197_norm/。

采样实现的过程主要包括以下步骤:

首先,选择30000块好盘及2500块坏盘,并按照8:2的比例随机划分出训练集和测试集,训练集包含24000块好盘及2000块坏盘,样本数总计26000,测试集包含6000块好盘及500块坏盘,样本数总计6500。

然后,针对训练集中的每一个样本进行采样处理,包括以下步骤:

步骤1,截取最后60天的smart特征值,组成一个二维矩阵,大小60x12;

步骤2,以14天为滑动窗口,步长为1,共计60天的时间轴,索引0-59,共可滑动47次,得到47个样本点,每个样本点的大小为14x12,第一个样本点的时间跨度为0-1-2-…-13,第二个样本点的时间跨度1-2-3-…-14,一直到46-47-48-…-59;

步骤3,最后14个样本点的标签为1,其余样本点的标签为0;

步骤4,将每个样本添加到一个三维训练矩阵x中;

步骤5,将标签添加到一个一维标签矩阵y中;

步骤6,将训练矩阵和标签矩阵随机打散。

最后,当处理完成,训练样本总数为26000*47=1222000个,三维训练矩阵的大小为1222000x14x12,对应的一维标签矩阵大小为1222000x1。

其中,模型构建的过程,主要包括以下几个步骤:

步骤1,利用keras创建一个sequential序贯模型;

步骤2,添加一个lstm隐藏层,隐藏层有50个神经元,输入形状为14x12;

步骤3,添加一个全连接层,神经元个数12,激活函数relu;

步骤4,添加一个输出层,神经元个数1,激活函数sigmoid。

其中,设置验证集占比default_validation_split为0.15,设置梯度下降批大小batch_size为100,设置梯度下降迭代次数epochs为50。

最后,将采样得到的三维训练矩阵及一维标签矩阵输入到模型中进行训练,得到lstm模型

此外,测试的过程,主要包括以下几个步骤:

首先,选择测试集中的一个样本;

然后,截取最后14天的smart特征值,组成一个二维矩阵,大小14x12;将该二维矩阵添加到一个三维测试矩阵中;其中,好盘标签为0,坏盘标签为1;将该二维测试矩阵输入lstm模型进行预测,预测结果大于等于0.5认为是正样本,否则为负样本。

最后,与测试样本原标签进行对比,判断预测的准确性。

可见,本实施例通过先对原始存储设备特征数据进行滑动窗口步长采样处理,提高训练数据的数据量,最后得到三维训练矩阵和一维标签矩阵,然后进行长短时记忆网络训练,得到lstm检测模型,最后采用该lstm检测模型对待检测数据进行检测处理,得到故障检测结果,实现了采用lstm模型对存储设备故障状态进行检测,提高了存储设备故障检测的准确率,进而再对存储设备进行有效的维护操作,提高了存储设备执行时的可靠性和稳定性。

下面对本申请实施例提供的一种存储设备故障检测装置进行介绍,下文描述的一种存储设备故障检测装置与上文描述的一种存储设备故障检测方法可相互对应参照。

请参考图2,图2为本申请实施例所提供的一种存储设备故障检测装置的结构示意图。

本实施例中,该装置可以包括:

特征采样模块100,用于对原始存储设备特征数据进行滑动窗口步长采样处理,得到三维训练矩阵和一维标签矩阵;

模型训练模块200,用于采用keras神经网络库根据三维训练矩阵和一维标签矩阵进行长短时记忆网络训练,得到lstm检测模型;

故障检测模块300,用于采用lstm检测模型对待检测数据进行检测处理,得到故障检测结果。

可选的,该特征采样模块100,可以包括:

特征选择单元,用于根据突变点检测算法对原始存储设备特征数据进行选择,得到原始特征值;

特征数据划分单元,用于将原始特征值划分为训练集和测试集;

样本点采样单元,用于根据磁盘smart规则、预设滑动大小以及预设步长对训练集和测试集进行样本点采样,得到三维训练矩阵;

标签处理单元,用于对三维训练矩阵打标签处理,得到一维标签矩阵。

可选的,该模型训练模块200,可以包括:

模型构建单元,用于采用keras神经网络库构建出序贯模型;

网络配置单元,用于对序贯模型添加lstm隐藏层、全连接层以及输出层,并进行配置,得到长短时记忆网络;

网络训练单元,用于根据三维训练矩阵和一维标签矩阵对长短时记忆网络进行训练,得到lstm检测模型。

本申请实施例还提供一种存储服务器,包括:

存储器,用于存储计算机程序;

处理器,用于执行所述计算机程序时实现如以上实施例所述的存储设备故障检测方法的步骤。

本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如以上实施例所述的存储设备故障检测方法的步骤。

该计算机可读存储介质可以包括:u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。

说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。

专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。

结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或技术领域内所公知的任意其它形式的存储介质中。

以上对本申请所提供的一种存储设备故障检测方法、存储设备故障检测装置、存储服务器以及计算机可读存储介质进行了详细介绍。本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。

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