本发明涉及移动通信,尤其涉及一种故障预测方法、装置、电子设备及存储介质。
背景技术:
1、随着信息化和云计算技术的不断提高,信息慢慢地不再以实物为载体,而是以“云”的方式存储。云资源池中通常包含了成百上千台服务器,以构建庞大的计算、存储资源,同时创建了虚拟机承载错综复杂的应用服务。云资源池一旦出现故障,则直接威胁着云端部署的各类业务,造成难以量估的经济损失,带来不利的社会影响。
2、对于资源池中的告警,目前往往依赖于实时获取服务器的性能数据,当某一指标数据超出给定的固定阈值,此时才给运维人员发送通知。这种方式往往会出现一定的问题,例如云资源池的某台宿主机由于宕机触发了高可用性(high availability,ha),其承载的虚机迁移到其他宿主机,发生迁移的虚机会进行重启,导致虚机的某些进程中断,但是在告警模块没有提示。而且,随着云资源池工作过程的变化,给定的阈值可能不再合适,从而导致云资源池的故障检测不准确。
3、由此可见,目前通过设置静态阈值监测云资源池是否发生故障,故障检测不及时且准确率较低。
技术实现思路
1、本技术实施例提供一种故障预测方法、装置、电子设备及存储介质,以解决现有技术中对云资源池的故障检测不及时且准确率较低的问题。
2、第一方面,本技术实施例提供了一种故障预测方法,所述方法包括:
3、获取云资源池的目标指标在第一时间段内的第一时间序列;
4、将所述第一时间序列分解为n个成分序列,n为大于0的整数;
5、将所述第一时间序列的第i个成分序列输入至第i个成分序列的预测模型,得到第i个预测序列,所述第i个预测序列为第i个成分序列在第二时间段内的预测序列,其中,i为1至n的整数,所述第二时间段位于所述第一时间段之后;
6、获取所述目标指标在所述第二时间段内的第二时间序列;
7、将所述第二时间序列分解为n个成分序列;
8、计算所述第二时间序列的第i个成分序列与所述第i个预测序列的残差,得到n个残差序列;
9、根据所述n个残差序列,预测所述云资源池是否存在故障。
10、可选地,所述将所述第一时间序列分解为n个成分序列,包括:
11、采用时间序列分解stl算法和归一化算法,将所述第一时间序列分解为n个成分序列;
12、所述将所述第二时间序列分解为n个成分序列,包括:
13、采用时间序列分解stl算法和归一化算法,将所述第二时间序列分解为n个成分序列;
14、其中,所述n个成分序列包括趋势序列、周期序列、噪声序列中至少一项。
15、可选地,所述根据所述n个残差序列,预测所述云资源池是否存在故障,包括:
16、确定第i个残差序列的上界和下界;
17、确定第i个残差序列的决策函数的取值;
18、根据得到的n个残差序列的上界、下界、决策函数的取值,预测所述云资源池是否存在故障。
19、可选地,所述确定第i个残差序列的上界和下界,包括:
20、获取第i个残差序列中的正值序列和负值序列;
21、计算所述正值序列的平均值和标准差;
22、计算所述负值序列的平均值和标准差;
23、根据所述正值序列的平均值和标准差,确定第i个残差序列的上界;
24、根据所述负值序列的平均值和标准层,确定第i个残差序列的下界。
25、可选地,所述确定第i个残差序列的决策函数的取值,包括:
26、计算第i个残差序列中残差值的平方,得到第一数值;
27、计算第i个残差序列中残差值的平方和的期望,得到第二数值;
28、计算所述第一数值与所述第二数值的比值,得到所述第i个残差序列的决策函数的取值。
29、可选地,所述根据得到的n个残差序列的上界、下界、决策函数的取值,预测所述云资源池是否存在故障,包括:
30、在同一残差序列的决策函数的取值处于上界与下界之间的情况下,预测所述云资源池不存在故障;
31、在任一残差序列的决策函数的取值大于该残差序列的上界,或者小于该残差序列的下界的情况下,预测所述云资源池存在故障。
32、可选地,获取所述第i个成分序列的预测模型的过程,包括:
33、获取所述目标指标在第三时间段内的第三时间序列;
34、将所述第三时间序列划分为两部分,分别存储至训练数据集和验证数据集中;
35、分别将所述训练数据集和所述验证数据集中的时间序列,分解为n个成分序列;
36、根据所述训练数据集对应的第i个成分序列、所述验证数据集对应的第i个成分序列,对深度学习模型进行训练,得到所述第i个成分序列的预测模型。
37、第二方面,本技术的实施例提供了一种故障预测装置,所述装置包括:
38、第一获取模块,用于获取云资源池的目标指标在第一时间段内的第一时间序列;
39、第一分解模块,用于将所述第一时间序列分解为n个成分序列,n为大于0的整数;
40、处理模块,用于将所述第一时间序列的第i个成分序列输入至第i个成分序列的预测模型,得到第i个预测序列,所述第i个预测序列为第i个成分序列在第二时间段内的预测序列,其中,i为1至n的整数,所述第二时间段位于所述第一时间段之后;
41、第二获取模块,用于获取所述目标指标在所述第二时间段内的第二时间序列;
42、第二分解模块,用于将所述第二时间序列分解为n个成分序列;
43、计算模块,用于计算所述第二时间序列的第i个成分序列与所述第i个预测序列的残差,得到n个残差序列;
44、预测模块,用于根据所述n个残差序列,预测所述云资源池是否存在故障。
45、第三方面,本技术的实施例提供了一种电子设备,包括存储器,收发机,处理器:
46、存储器,用于存储计算机程序;收发机,用于在所述处理器的控制下收发数据;处理器,用于读取所述存储器中的计算机程序并执行上述第一方面所述的故障预测方法。
47、第四方面,本技术的实施例提供了一种可读存储介质,所述可读存储介质上存储程序或指令,所述程序或指令被处理器执行时实现上述第一方面所述的故障预测方法。
48、在本技术的一个实施例中,能够获取云资源池的目标指标在第一时间段内的第一时间序列,并将第一时间序列分解为至少一个成分序列,从而将得到的各个成分序列输入至各个成分序列的预测模型,得到各个成分序列在第二时间段内的预测序列,并且,还可以获取目标指标在第二时间段内的第二时间序列,并将第二时间序列分解为至少一个成分序列,进而计算属于各个预测序列与相应第二时间序列分解的成分序列的残差,并根据得到的各个残差序列,预测云资源池是否存在故障;其中,第二时间段位于第一时间段之后。
49、可见,在本技术的一个实施例中,可以将云资源池的目标指标的时间序列分解为至少一个成分序列,从而从多个角度对云资源池进行故障预测,提高故障预测的准确率;并且,可以通过各个成分序列的预测模型,基于已有的时间序列分解得到的成分序列,预测未来时间段内的该成分序列,进而通过对比预测序列与该未来时间段内的实际时间序列分解得到的成分序列,来预测云资源池是否存在故障;由此可知,本技术的实施例,通过分析云资源池的目标指标的已有规律,实现了云资源池故障的动态预测,从而可以更加及时发现云资源池的故障,并且预测过程更加智能化,从而可以显著提高云资源池故障预测的准确率。