适用于运维自动化系统的监测数据压缩方法与流程

文档序号:11154774阅读:1003来源:国知局
适用于运维自动化系统的监测数据压缩方法与制造工艺
本发明涉及数据压缩
技术领域
,尤其涉及适用于运维自动化系统的监测数据压缩方法。
背景技术
:随着企业信息化建设的不断推进和完善,计算机软硬件系统的运行已经成为了各个行业普遍关注的问题。而IT运维工作中很重要的一项内容是对主机设备的运行状态以及网络负载等信息进行实时监控和记录,以实现异常情况的及时告警、故障诊断以及数据挖掘等功能。由于数据采集点众多,采集间隔短,导致实时监测数据量非常庞大,而这些数据中的一些噪声数据不仅对其他监测数据没用,还会影响其他整体数据的压缩,增大数据压缩和解压的误差。因此,为确保海量数据能够实时存储,并尽可能降低数据存储的容量,提高存储效率,需要对数据进行快速有效的压缩处理。现有的数据压缩技术包括基于小波变换的压缩、基于字典的压缩、基于统计的压缩等。而实时数据库领域,由于原始数据量大,数据的变化平稳,且能容忍部分无用数据的丢失,所以,通常采用有损压缩算法以获得更高的压缩比。旋转门趋势(SDT)算法是美国OSI软件公司研发的用于实时数据库中的有损压缩算法,是一种快速线性拟合压缩,具有高效率、高压缩比、适合增量压缩等特点的算法,被广泛应用于实时数据压缩
技术领域
。然而,传统的SDT算法的压缩率和信息损失率收到压缩精度参数ΔE的影响较大,并且该算法在数据有噪声的情况下,压缩的性能是比较低的。虽然现有的技术对SDT算法做了一定的改进,或是增大了压缩率,或是降低了压缩误差和压缩时间,但是都没有考虑噪声数据的影响,同时也没能很好地解决压缩精度参数ΔE的选取问题。技术实现要素:本发明的目的在于克服现有技术的不足,提供一种适用于运维自动化系统的监测数据压缩方法,减小了噪声数据对压缩性能产生的影响,能够通过比较相邻区间的数据波动,动态调整压缩精度参数。本发明的目的是通过以下技术方案来实现的:适用于运维自动化系统的监测数据压缩方法,所述的方法的步骤如下:S1、数据预处理;对原始数据进行平滑处理,减小噪声数据对SDT算法的干扰;S2、初步数据压缩;对平滑处理后的数据采用控制算法对数据初步压缩;S3、进一步数据压缩;采用SDT算法进一步压缩,提高总体压缩比,并减少SDT算法处理的数据量;S4、SDT压缩精度参数匹配;在每次数据压缩完成后,根据数据波动的变化,使压缩精度参数与数据波动变化的特性进行匹配,得到匹配后的压缩精度参数;S5、SDT压缩精度参数自适应调整;根据匹配后的压缩精度参数重复步骤S2、S3和S4后,再进一步自适应调整压缩精度参数;S6、重复步骤S2、S3和S5,直到压缩精度参数与数据波动变化的特性完全匹配,得到最优的压缩精度参数再重复步骤S2和S3后,完成数据的压缩,以取得最优的压缩性能。所述的S1中的平滑处理的方法包括最小二乘法,所述的最小二乘平滑处理的步骤如下:S11、初始化输入的原始数据序列Y=(ti,yi)的上下斜率;S12、对相邻的五个原始数据点(ti-2,yi-2),(ti-1,yi-1),…,(ti+2,yi+2),用曲线y=α0+α1t+α2t2+α3t3进行拟合;S13、采用最小二乘法求出系数α0,α1,α2,α3,得到五点三次平滑公式为:YS=AY,其中Y是原始数据向量,YS是平滑后的数据向量,数据向量的坐标分别表示5个连续的数据值,A是5阶系数矩阵。所述的步骤S2的数据压缩的控制算法包括死区限值算法,所述的死区限值算法的具体步骤如下:S21、在一组i个数据的初始数据点a设置死区压缩精度参数ΔE′的限制区间,然后依次对后续数据进行压缩;S22、若数据点在此死区内,则舍弃该数据点,若数据点在此死区外,则对该数据点进行存储归档,并以该点设置死区继续对后续数据进行压缩,直到所有数据压缩完毕。所述的SDT算法进一步数据压缩的步骤如下:S31、从压缩后的数据中取出一个数据点(tk,yk)测试时间间隔,其中0<k≤j,j<i;若该点与上个存储点时间间隔等于或者超过了被存储的两点间允许的最大时间间隔,则不需要进行SDT分析,直接存储前一点(tk-1,yk-1),否则,继续进行后续数据的压缩;S32、计算旋转门转动到(tk,yk)时两扇门的斜率,并与前一状态比较取开门角度大的状态,如果上扇门的斜率大于等于下扇门的斜率,则表示两扇门之间的角度以及大于或等于180°,此时就存储前一点(tk-1,yk-1)并将其作为新压缩段的起始点,否则,不存储任何点,继续进行下一步骤;S33、检测一组j个数据是否压缩完毕,如果未压缩完毕,则跳转到步骤S21。所述的S3中的SDT压缩精度参数自适应调整的步骤如下:S31、利用前一区间的数据波动情况预测下一区间的情况,得到数据的离散程度,用标准差表示为:其中,yi是数据值,μ为y的平均值,n为数据总数;S32、计算相邻压缩区间的波动变化w:w=σi/σi-1,其中σi和σi-1分别表示第i和i-1次压缩的数据标准差;S33、动态调整ΔE的值:其中F(w)=(w-1)3+1,τ为数据波动变化的容差系数,F(w)为动态调幅系数函数;当|w-1|≤τ时,说明数据的波动变化不明显,无需对ΔE进行调整;当|w-1|>τ时,说明数据的波动变化较大,应对ΔE进行相应的调整;由于调幅函数F(w)关于(1,1)中心对称,且单调递增,当w<1时,F(w)<1,数据波动变得平缓,为了取得更高的压缩比,则减小ΔE;当w>1时,F(w)>1,数据波动起伏变大,则应该增大ΔE以取得更低的压缩误差。所述的死区压缩精度参数ΔE′与SDT压缩精度参数ΔE设置为相等。在首次执行数据预处理中算法时,初始化ΔE=(ΔEmax+ΔEmin)/2,其中ΔEmax为压缩精度参数上限,ΔEmin为压缩精度参数下限。本发明的有益效果是:适用于运维自动化系统的监测数据压缩方法,能够基于最小二乘原理,对原始数据进行平滑处理,减小噪声数据对压缩性能的影响,使算法能够更准确的判断数据的关键趋势,提高压缩比;结合死区限值算法实现初步压缩,进一步增大压缩比,最后能够通过数据波动变化对压缩精度参数动态调整。该方法能够在保持低压缩误差的前提下,有效提高压缩比,并且具有低复杂度和良好的可扩展性。附图说明图1为方法流程图;图2为死区限值压缩原理图;图3为仿真数据ASDT/SDT压缩比对比图;图4为仿真数据ASDT/SDT均方根误差对比图;图5为解压重构后数据对比图;图6为真实数据ASDT/SDT压缩比对比图;图7为真实数据ASDT/SDT均方根误差对比图。具体实施方式下面结合附图进一步详细描述本发明的技术方案,但本发明的保护范围不局限于以下所述。如图1所示,适用于运维自动化系统的监测数据压缩方法,所述的方法的步骤如下:S1、数据预处理;对原始数据进行平滑处理,减小噪声数据对SDT算法的干扰;S2、初步数据压缩;对平滑处理后的数据采用控制算法对数据初步压缩;S3、进一步数据压缩;采用SDT算法进一步压缩,提高总体压缩比,并减少SDT算法处理的数据量;S4、SDT压缩精度参数匹配;在每次数据压缩完成后,根据数据波动的变化,使压缩精度参数与数据波动变化的特性进行匹配,得到匹配后的压缩精度参数;S5、SDT压缩精度参数自适应调整;根据匹配后的压缩精度参数重复步骤S2、S3和S4后,再进一步自适应调整压缩精度参数;S6、重复步骤S2、S3和S5,直到压缩精度参数与数据波动变化的特性完全匹配,得到最优的压缩精度参数再重复步骤S2和S3后,完成数据的压缩,以取得最优的压缩性能。所述的S1中的平滑处理的方法包括最小二乘法,所述的最小二乘平滑处理的步骤如下:S11、初始化输入的原始数据序列Y=(ti,yi)的上下斜率;S12、对相邻的五个原始数据点(ti-2,yi-2),(ti-1,yi-1),…,(ti+2,yi+2),用曲线y=α0+α1t+α2t2+α3t3进行拟合;S13、采用最小二乘法求出系数α0,α1,α2,α3,得到五点三次平滑公式为:YS=AY,其中Y是原始数据向量,YS是平滑后的数据向量,数据向量的坐标分别表示5个连续的数据值,A是5阶系数矩阵。所述的步骤S2的数据压缩的控制算法包括死区限值算法,所述的死区限值算法的具体步骤如下:S21、在一组i个数据的初始数据点a设置死区压缩精度参数ΔE′的限制区间,然后依次对后续数据进行压缩;S22、若数据点在此死区内,则舍弃该数据点,若数据点在此死区外,则对该数据点进行存储归档,并以该点设置死区继续对后续数据进行压缩,直到所有数据压缩完毕。如图2所示,t4时刻的b点在此区间之外,故存储b点,并以该点设置死区继续对后续数据进行压缩。所述的SDT算法进一步数据压缩的步骤如下:S31、从压缩后的数据中取出一个数据点(tk,yk)测试时间间隔,其中0<k≤j,j<i;若该点与上个存储点时间间隔等于或者超过了被存储的两点间允许的最大时间间隔,则不需要进行SDT分析,直接存储前一点(tk-1,yk-1),否则,继续进行后续数据的压缩;S32、计算旋转门转动到(tk,yk)时两扇门的斜率,并与前一状态比较取开门角度大的状态,如果上扇门的斜率大于等于下扇门的斜率,则表示两扇门之间的角度以及大于或等于180°,此时就存储前一点(tk-1,yk-1)并将其作为新压缩段的起始点,否则,不存储任何点,继续进行下一步骤;S33、检测一组j个数据是否压缩完毕,如果未压缩完毕,则跳转到步骤S21。所述的S3中的SDT压缩精度参数自适应调整的步骤如下:S31、利用前一区间的数据波动情况预测下一区间的情况,得到数据的离散程度,用标准差表示为:其中,yi是数据值,μ为y的平均值,n为数据总数;S32、计算相邻压缩区间的波动变化w:w=σi/σi-1,其中σi和σi-1分别表示第i和i-1次压缩的数据标准差;S33、动态调整ΔE的值:其中F(w)=(w-1)3+1,τ为数据波动变化的容差系数,F(w)为动态调幅系数函数;当|w-1|≤τ时,说明数据的波动变化不明显,无需对ΔE进行调整;当|w-1|>τ时,说明数据的波动变化较大,应对ΔE进行相应的调整;由于调幅函数F(w)关于(1,1)中心对称,且单调递增,当w<1时,F(w)<1,数据波动变得平缓,为了取得更高的压缩比,则减小ΔE;当w>1时,F(w)>1,数据波动起伏变大,则应该增大ΔE以取得更低的压缩误差。所述的调幅系数函数F(w)采用三次函数的原因在于:当数据波动变化较快时,若ΔE调整不及时,会导致该数据段压缩效果不佳。另一方面,数据波动变化放缓,则需要细微调节ΔE才能逼近理想值。调幅系数函数F(w)在w=1两侧一阶导数不断增大,使F(w)的变化更为快速,从而能更及时的调整ΔE,使之适应数据波动变化。所述的死区压缩精度参数ΔE′与SDT压缩精度参数ΔE设置为相等。在首次执行数据预处理中算法时,初始化ΔE=(ΔEmax+ΔEmin)/2,其中ΔEmax为压缩精度参数上限,ΔEmin为压缩精度参数下限。本发明实施例一的仿真数据通过采用正弦波信号叠加噪声的形式来模拟真是监测数据,函数表达式为y=sin(ωt)+N(p,t),其中N(p,t)为噪声信号,p为噪声强度参数,p值越大,噪声数据对压缩性能的影响就越大。为了测试自适应旋转门趋势算法(ASDT)对含噪声的压缩系能,令p从1增长到10,分别测试ASDT和SDT的算法性能。其中角频率ω=0.001,采用周期为2,采样区间为[0,2000π],设置SDT算法ΔE=0.02,ASDT算法的ΔEmax=0.04,ΔEmin=0.1,数据波动变化的容差系数τ=0.1。得到ASDT和SDT的结果对比如下表1所示:ASDT/SDT压缩比均方根误差p=15.51/2.110.362/0.370p=25.45/2.080.414/0.410p=35.18/2.090.449/0.437p=44.63/2.060.511/0.515p=54.32/2.070.564/0.579p=64.23/2.040.634/0.590p=74.02/2.050.687/0.728p=83.80/2.050.804/0.811p=93.57/2.020.875/0.864p=103.25/2.031.029/1.039表1如图3和表1所示,随着噪声强度的增大,ASDT和SDT的压缩比均有不同程度的减小。尽管如此,ASDT的压缩比一直高于SDT,最低时仍为3.25,相比于SDT提高了60%以上。这是由于噪声数据的频繁抖动使SDT算法不能正确预测数据的走势,从而过多的记录了无用信息。而ASDT算法由于对原始数据进行了平滑处理,减轻了噪声的影响,使压缩算法能更准确的把握数据的关键趋势,大大减少归档点数。同时,采用死区限值过滤进一步增大了压缩比。虽然ASDT在压缩比方面比SDT取得更好的性能,但是这并不意味着是以损失数据精度为代价的。如图4和表1所示,ASDT和SDT的均方根误差基本相同,这是由于ASDT能根据相邻区间数据波动的变化趋势动态调整精度参数ΔE,从而使压缩误差维持在合理的水平。如图5所示,自上而下分别为原始数据、SDT以及ASDT,从图中可以看出SDT算法收噪声影响较大,而ASDT能更好的抵抗噪声数据的干扰,忽略频繁抖动的无关信息存储,识别数据变化的关键趋势。本发明实施例二的真实数据通过对某IT运维系统中磁盘使用率的进行监测,得到包括10个不同时间段采集的数据,采用周期为2秒,每个时间段采样点均为2000以上。设置SDT算法ΔE=0.5,ASDT算法的ΔEmax=1.0,ΔEmin=0,数据波动变化的容差系数τ=0.1。如图6、图7所示,ASDT在真实数据集上依然获得了比较高的压缩比,最低时为9.49,对比SDT至少提高了24%。ASDT的均方根误差基本与SDT持平,取得良好的数据保真度,从真实数据集上可以看出ASDT算法的性能更优。对不同规模的数据进行压缩时间的测试,设置数据规模为10m,m∈[2,8]。对于每个m,分别测试10次取平均值,得到结果如下表2所示:数据规模(10m)压缩时间(秒)重构时间(秒)m=26.35*10-48.51*10-4m=32.12*10-37.66*10-3m=41.24*10-25.29*10-2m=51.02*10-14.31*10-1m=61.054.37m=710.4343.25m=8138.04507.34表2从表2可以看出,ASDT算法压缩时间和重构时间随着数据规模的增长而呈线性增长的趋势,证明ASDT在对IT运维系统进行数据压缩的时候具有良好的可扩展性。而且,当数据规模为108时,ASDT的压缩时间和解压重构分别为138.04秒和507.34秒,对较大规模的数据有良好的处理能力。以上所述仅是本发明的优选实施方式,应当理解本发明并非局限于本文所披露的形式,不应看作是对其他实施例的排除,而可用于各种其他组合、修改和环境,并能够在本文所述构想范围内,通过上述教导或相关领域的技术或知识进行改动。而本领域人员所进行的改动和变化不脱离本发明的精神和范围,则都应在本发明所附权利要求的保护范围内。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1