The invention discloses a method and system for analyzing time series data parallel based on the method in solving the problem of time series data, do not need to divide the application, also do not need to be mapped to the problem of distributed process sets, according to the design method of the application data will be treated as a whole, operation the adaptive computing platform to create the process without human intervention; the method of using piecewise redundancy, reduce the amount of communication through the data redundancy calculation process, improve the efficiency of parallel tasks, and the amount of each computing node average allocation, reduce the cluster resource requirements, it does not need to solve the communication delay and load imbalance; according to the method for computing platform, application design reliability, even if a process or node failure The remaining computation tasks can also be replaced and completed by other processes or computing nodes, which can ensure the correctness of the calculation results.
【技术实现步骤摘要】
基于数据并行的时间序列分析方法与系统
本专利技术涉及时间序列分析
,具体而言,涉及一种基于数据并行的时间序列分析方法及系统。
技术介绍
随着物联网、大数据等新一代信息技术逐渐向工业领域渗透,现代工业设备中安装了数以千计的传感器,来探测温度、压力、振动和噪声。传感器产生的数据经过解码和转换后形成一维或高维的序列数据,数据量远大于企业中计算机和人工产生的数据。利用这些序列数据可以找出被监测对象的一些特征,进而实现设备诊断、故障预测等分析。现有的时间序列分析方法主要有两种:(1)一种是通过单台计算机上的串行或多线程的矩阵运算方法对时间序列数据进行分析;(2)还有一种是通过基于超性能计算框架MPI实现的并行计算平台,利用多个计算节点上的计算资源结合并行的矩阵运算方法对时间序列数据进行并行分析。其中第一种时间序列分析方法缺点在于:计算效率低,适用范围小,仅适用于小规模的时间序列数据,分析所使用的算法难以在可接受的时间内完成计算。第二种时间序列分析方法虽然适用于大规模的时间序列数据,但其易用性差:并行效率较低,对集群资源要求较高,如果集群资源不足以启动所有计算实例,则可能造成分析任务一直等待的问题,并且计算实例较多时会极大地增加通信开销,导致分析任务所用时间过度增长。现有的时间序列分析系统主要有两种:第一种是借助于运行在单机上的矩阵运算系统中的时间序列分析功能实现,如SPSS、Matlab和R等系统中包含的大量的时间序列分析算法和开源库;第二种是借助于运行在分布式集群上的计算系统中的时间序列分析功能实现,例如MLlib、RHadoop和Mahout等分布式矩阵运 ...
【技术保护点】
基于数据并行的时间序列分析方法,其步骤如下:a.输入分析时间序列数据所要使用的分析算法;b.在指定分析算法后,根据待分析的时间序列数据的周期特性,在分布式集群的主节点上,生成分析计算时所需要的并行参数;所述步骤b具体包括如下步骤:(b1)根据输入的时间序列数据文件,在满足能够保留与输入的原始时间序列数据一致的周期特性和小于分布式集群中单节点分析运算所能容纳的最大规模两个条件下,对该时间序列数据文件进行取样,在分布式集群的主节点上生成时间序列样本;(b2)根据给定的分析算法,对时间序列样本的整体进行分析,得到串行分析结果;(b3)对于给定的分析算法,设定不同的分段长度和冗余范围,对时间序列样本进行多次迭代分析,即通过分段、冗余、分析、去除冗余以及合成分段的操作得到多次模拟并行分析结果;(b4)比较多次模拟并行分析结果与串行分析结果之间的相似程度,将相似程度高于阈值范围的单个或多个结果对应的冗余范围作为候选项,再在候选项中选择相似程度最高的结果所对应的冗余范围作为分析计算时所需的第一并行参数;(b5)根据分析结果的相似程度,选择符合阈值范围的单个或多个分段长度作为候选值,再根据分段长度对分 ...
【技术特征摘要】
1.基于数据并行的时间序列分析方法,其步骤如下:a.输入分析时间序列数据所要使用的分析算法;b.在指定分析算法后,根据待分析的时间序列数据的周期特性,在分布式集群的主节点上,生成分析计算时所需要的并行参数;所述步骤b具体包括如下步骤:(b1)根据输入的时间序列数据文件,在满足能够保留与输入的原始时间序列数据一致的周期特性和小于分布式集群中单节点分析运算所能容纳的最大规模两个条件下,对该时间序列数据文件进行取样,在分布式集群的主节点上生成时间序列样本;(b2)根据给定的分析算法,对时间序列样本的整体进行分析,得到串行分析结果;(b3)对于给定的分析算法,设定不同的分段长度和冗余范围,对时间序列样本进行多次迭代分析,即通过分段、冗余、分析、去除冗余以及合成分段的操作得到多次模拟并行分析结果;(b4)比较多次模拟并行分析结果与串行分析结果之间的相似程度,将相似程度高于阈值范围的单个或多个结果对应的冗余范围作为候选项,再在候选项中选择相似程度最高的结果所对应的冗余范围作为分析计算时所需的第一并行参数;(b5)根据分析结果的相似程度,选择符合阈值范围的单个或多个分段长度作为候选值,再根据分段长度对分布式集群上运行分析算法的时空复杂度影响,在候选值中确定最优的分段长度,作为分析计算时所需的第二并行参数,c.根据输入的并行参数,在分布式集群的所有节点上,对时间序列数据进行分析计算,生成分析结果,所述步骤c具体包括如下步骤:(c1)根据并行参数,在分布式集群上对输入的原始时间序列数据进行划分和冗余,在分布式集群的各个节点上形成并行单元;(c2)利用输入的分析算法,在分布式集群上对各个并行单元进行分析运算,得到各个子序列所形成的并行单元的分析结果;(c3)根据并行参数和对应子序列划分的顺序,去除各个并行单元的分析结果中的冗余并进行拼接,生成最终的分析结果,并对其进行保存。2.如权利要求1所述的基于数据并行的时间序列分析方法,其特征在于,子步骤(b4)和子步骤(b5)在度量分析结果的相似程度时,衡量标准为皮尔逊相关系数,定义相关系数ρxy:式中,xn和yn是两个能量有限的确定性信号.当xn=yn时,ρxy=1表明两个信号完全相等;若ρxy=0,则表明它们完全无关.如果两个信号有某种程度上的相似,则ρxy在0到1之间取值。3.如权利要求2所述的基于数据并行的时间序列分析方法,其特征在于,所述子步骤(b5)具体为,多次迭代的模拟分析过程中,分析结果的相似程度取得最高值时所采用的分段长度作为最小分段长度,该值作为上述迭代分析的初始条件。4.如权利要求2所述的基于数据并行的时间序列分析方法,其特征在于,获取最小分段长度的具体方法如下:对于总长度为m的待分析时间序列X={x1,x2,...,xm},被分割成m/LS个长度为LS的非重叠子序列,每个子序列分别向左右两侧各取长度为LR的冗余,由此形成m/LS个长度为n的并行单元,其中n=2LR+LS,定义采用数据并行的时空代价CostT(LS):式中,T(n)是指长度为n的单个并行单元在利用分析算法计算时的时间复杂度;T(m)是指总长度为m的时间序列在利用相同的分析算法计算时的时间复杂度;C为常数,是除计算外的其他时间开销,由时间代价定义式计算得到的时间代价取值范围0<CostT(LS)<1,在长度为n的并行单元中,非...
【专利技术属性】
技术研发人员:滕飞,黄齐川,李勇,李天瑞,
申请(专利权)人:西南交通大学,
类型:发明
国别省市:四川,51
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。