时间序列存在于我们日常生活中的社会多个部门,如金融、医疗和能源管理。其中一些领域需要高数据量,以便从分析或预测目标变量的行为中获得见解。跨多个用户的平台传输和处理高数据速率和高数据量需要存储和计算机电源可用性。压缩技术是一种强大的方法,可以避免系统崩溃。在下文中,我们将讨论时间序列压缩算法及其在不同行业的实际应用中的作用。
什么是时间序列?
时间序列被定义为连续时间获得的数量值序列,通常具有相等间隔。从我们用健身应用程序监控我们的锻炼到跟踪我们从城市到门口的披萨配送,我们都体验到了时间戳数据的使用。当需要了解变量随时间的演变时,时间序列与问题相关,例如了解变量的时间分布或预测其值。
时间序列通常以表格格式的时间戳数字数据的形式出现。音频数据本身已经表示为时间序列,因为它是根据频率定义的。然而,尽管时间序列本身是一种数据类型,但它们也可以与其他数据类型相结合,以生成更复杂的实体,其中包含嵌入式时间方面,例如:
-
随时间推移的图像序列定义了视频。
-
来自地理空间数据的坐标对的时间序列定义了跟踪路径。
时间序列数据需要特定的技术,以便不仅从数据中的不同模式中获得见解,而且从随时间推移的不同模式之间获得见解。在数据科学管道中,这些技术在预处理、分析和建模步骤中使用。最常见的时间序列技术如下图1所示:

图1:时间序列方法
数据压缩
数据压缩是为了减少表示数据所需的位数而转换数据的过程。这个过程是通过编码或重新排列其位结构来改变数据。在资源对数据的存储、处理和传输至关重要的情况下,压缩是一种非常有用的技术。这种情况的两个极端是:
-
资源有限的情况下,可用存储和处理受到成本的限制
-
大数据场景,其中高频数据流入需要高效的数据管理
数据压缩过程包括将数据编码为较小的格式。为了执行反向过程,需要解码器来解压缩数据,如图2所示:

图2:数据压缩方案
压缩以较小的格式、较少的位表示数据中存在的相同信息。由于它在可以编码的数据中搜索模式,因此这是一个计算成本高昂的过程,可能需要时间和内存。最先进的压缩技术包括:
-
无损压缩以一种不会丢失信息的方式识别并消除数据冗余。解码后的数据将精确恢复到其原始状态。
- 常见用途:数据库、电子邮件、电子表格、文档和源代码
-
有损压缩识别并永久删除冗余数据位,使解压缩后无法恢复原始数据。
- 常见用途:音频、图像、图形、视频和扫描文件
在数据压缩中,为了在保留数据的同时仍能满足存储限制的要求,在准确性和压缩之间进行权衡是一个经常遇到的挑战。无损数据压缩只能在一定程度上压缩数据,以香农信息为阈值。对于高频数据,需要有损压缩才能有效减小大小。
表1:

时间序列的压缩方法
大数据的兴起和智能设备的使用表明了对强大压缩技术的需求,这些技术能够满足依赖时间序列数据的行业的处理需求。在高频(约10kHz)的情况下,即使专门处理时间序列数据的数据库也可能过载。压缩算法因其高价值回报而被广泛研究。压缩技术的质量是通过其压缩比(压缩文件和原始文件之间的)、速度(以每比特的周期为单位)和恢复数据的准确性来衡量的。
时间序列压缩算法利用了传感器产生的时间序列的特定特征,例如一些时间序列段经常在相同或其他相关时间序列中重复(冗余),或者通过函数近似或通过神经网络模型预测来恢复时间序列的可能性。最先进的方法如下:
表2:


时间序列应用程序
为特定问题选择的压缩算法取决于应用程序的领域和相关数据。压缩的应用可以在许多领域找到,通过压缩图像、视频和音频数据的多媒体是最流行的。特别是,时间序列压缩用于关键行业。表3显示了不同部门的时间序列用例以及这些应用程序中的压缩重点。在所有用例中,表1所示的优点也适用。
表3:

结论
我们生活在大数据时代,每天都会产生超过250 EB的数据,其中很大一部分以时间序列的形式出现在广泛的行业中(注:250 EB=250×10的18次方)。时间序列压缩技术是高效收集、存储、操作和传输数据的强大方法,对于数据库维护和实现健壮的数据管理管道至关重要。
智能设备的大量采用也增加了对适用于低计算资源场景(如物联网)的压缩技术的需求。本文介绍了适用于多个时间序列配置文件和应用场景的有损和无损技术,并讨论了这些方法的局限性和优势。
原文标题:Time Series Compression Algorithms and Their Applications
原文作者:Rosana de Oliveira Gomes
原文链接:https://dzone.com/articles/time-series-compression-algorithms-and-their-appli




