第一部分 基础知识
第1章 时序数据
1.1 什么是时序数据
时序数据,即时间序列数据(time-series data),是一组按照时间顺序排列的数据。在日常生活中,设备、传感器收集的数据以及证券交易记录都属于时序数据。因此,许多人对时序数据的处理并不陌生,尤其是在工业自动化和证券金融领域,专业的时序数据处理软件已经存在,例如工业领域的AVEVA PI System和金融行业的KDB+。
这些时序数据可能是周期性、准周期性产生,或者由事件触发产生。它们的采集频率可能高也可能低,随后会被发送到服务器进行汇总、实时分析和处理。这些数据可以用于实时监测或预警工业互联网、物联网系统的运行状态,或者预测股市行情等。此外,这些数据还可以长期保存,以便进行离线数据分析。例如,统计设备在一定时间内的运行节奏和产出,分析如何优化配置以提高生产效率;统计生产过程中的成本分布,分析如何降低生产成本;统计设备在一定时间内的异常值,结合业务分析潜在的安全隐患,以减少故障时间等。
在过去的20年里,随着数据通信成本的急剧下降,以及各种传感技术和智能设备的出现,工业互联网和物联网企业为了监测设备、环境、生产线及整个系统的运行状态,在各个关键场景都配备了大量传感器来采集实时数据。从智能手环、共享出行、智能电表、环境监测设备到电梯、数控机床、挖掘机、工业生产线等,都在不断产生海量的实时数据,使得时序数据的体量呈指数级增长。例如,智能电表每隔15min采集一条时序数据,每天自动生成96条时序数据。目前,全国已有超过10亿块智能电表,每天产生高达960亿条时序数据。一辆联网汽车通常每隔15s采集一条时序数据,每天会产生5760条时序数据。假设有两亿辆联网汽车,它们每天产生的时序数据将超过10 000亿条。
由于数据量的指数级增长以及对分析和实时计算需求的不断增加,特别是在人工智能时代,传统的时序数据处理工具已难以满足需求。如何对每天高达10TB级别的海量时序大数据进行实时存储、分析和计算,已成为一个巨大的技术挑战。因此,在过去的10年里,高效处理海量时序大数据的问题受到全球工业界的高度关注。