分享自:

时间序列管理系统的综述

期刊:IEEE Transactions on Knowledge and Data EngineeringDOI:10.1109/TKDE.2017.2740932

《Time Series Management Systems: A Survey》由Søren Kejser Jensen、Torben Bach Pedersen和Christian Thomsen撰写,作者所属机构为丹麦的Aalborg University,文章发表在IEEE Transactions on Knowledge and Data Engineering期刊,于2017年11月出版。本文是一篇关于时间序列管理系统(Time Series Management Systems, TSMS)的综述论文,旨在系统地分类和讨论学术界及工业界在这一领域已发展的系统,并提出了未来研究的方向和作者对下一代TSMS的愿景。

时间序列管理系统的学术背景与研究意义

时间序列数据广泛存在于传感器网络、物联网(Internet of Things, IoT)、工业监控、科学实验等领域。这些系统通过记录具有时间索引的数据点(如传感器读数)来进行监控与分析。时间序列具有序列性,通常是按时间递增的有限或无限数据点序列,是数据系列(Data Series)的特例。

随着数据采集规模和速度的迅速增长,传统关系型数据库管理系统(Relational Database Management Systems, RDBMSs)已难以应对这些高频、大规模的时间序列数据的存储和分析需求。时间序列管理系统(TSMS)由此应运而生,这些系统在多个领域中得到了应用,包括IoT设备嵌入式存储、工业设备监控、大型数据集科学分析等。尽管TSMS的研究从20世纪90年代就已开始,但随着大数据及分布式计算技术的普及,对新一代TSMS的需求变得更为迫切。

本文综述的目标是分析现有的TSMS,探讨它们的优势与局限性,详细介绍它们的功能设计、存储架构、查询方法及研究方向,并对下一代TSMS的特性提出了愿景。


TSMS的分类与架构设计

作者将TSMS根据数据存储与数据处理组件的连接方式分为三大类: 1. 内部数据存储(Internal Data Stores):数据存储与处理组件紧密集成在同一个应用程序中。 2. 外部数据存储(External Data Stores):数据存储依赖外部数据库或分布式文件系统(Distributed File System, DFS)。 3. 关系数据库管理系统的扩展(RDBMS Extensions):通过扩展现有关系型数据库来支持时间序列数据的存储和查询。

内部数据存储的TSMS

这一类系统的主要优点是存储和查询功能的深度集成,以及系统独立性和部署的便捷性。以下是几个具有代表性的例子:

  1. TSDB: 使用BerkeleyDB实现存储,但其设计要求所有时间序列具有相同的起始时间戳和相同的数据点数量,这限制了其应用领域。

  2. Weardrive: 专为可穿戴设备设计的一种内存分布式TSMS,解决因固态存储介质瓶颈导致的性能问题。特点是通过远程内存和闪存缓解本地存储压力。

  3. Plato: 基于模型的近似查询处理(Approximate Query Processing, AQP),支持用户定义的模型并允许查询在模型之上直接执行。

  4. Chronos: 为工业监控设计,优化了闪存写入模式,使其更适合在环境受限的区域(如水电站)部署。

外部数据存储的TSMS

这一类系统大多采用分布式架构,扩展性更强。以下是其代表:

  1. Druid: 基于日志型时间序列数据设计,提供实时与批量分析功能,利用分布式架构优化查询性能。

  2. Gorilla: Facebook开发的一种分布式内存型TSMS,为了缓存最近26小时的数据设计,采用无损压缩技术以及高效存储框架。

  3. BTRDB: 用于高分辨率传感器数据管理,采用拷贝写(Copy-on-Write)的K-ary树结构,为不同分辨率和时间窗口的快速查询提供支持。

  4. Sensorgrid: 专注于传感器网络中流数据的存储,通过将预定义聚合功能前置,优化了传感器数据分析的性能。

  5. Tristan: 通过在线字典压缩和分层存储提供基于精度的AQP功能,适配各种时间序列分析需求。

RDBMS扩展

此类方法通过扩展传统RDBMS,如PostgreSQL和Oracle,为时间序列存储和分析提供原生支持。以下是几个典型系统:

  1. Timetravel: 在PostgreSQL基础上开发,采用分级模型索引(Hierarchical Model Index),支持对历史数据和预测数据的近似查询。

  2. F2DB: 增强了SQL语言,提供时间序列数据中使用ARIMA等模型进行预测的功能,主要针对数据仓库中的商业智能应用。

  3. Bakkalian等的模型: 基于线性函数建模,支持插值技术,用于减少存储需求并提高OLAP查询性能。


未来研究方向与作者愿景

作者与文献中提到的研究方向包括以下几点:

  1. 多源异构数据集成与分析: 针对物联网(IoT)和传感器网络中不同来源数据的异构性问题,提高语义整合和数据建模能力。

  2. 大规模与高频数据的存储与处理: 为支持快速增长的数据规模,需要对分布式存储架构的横向扩展性和资源调度算法进行改进。

  3. 更高效的AQP方法: 开发更鲁棒的近似分析方法和支持多模型的统一查询框架。

  4. 在线流处理: 增强TSMS对实时数据的处理性能,并改善其对复杂流计算任务的支持能力。

  5. 视觉化和自定义运算接口: 为用户提供更友好的数据交互能力与数据结果展示,并支持领域专家定制化分析。

这篇论文提出的研究方向,也为时间序列管理领域的学术研究和实际应用提供了许多创造性启示。


总结与价值

本文全面回顾了时间序列管理系统的设计和技术细节,涵盖从早期研究到当前分布式系统的范式演变,提供了详尽的分类框架和技术分析。同时,通过对限制与研究方向的探讨,本文为下一代时间序列管理系统在大数据时代的应用奠定了理论基础,并对工业界和学术界设计新系统具有指导意义。这些见解特别对于物联网、传感器网络和流处理等领域将产生重要影响。

上述解读依据用户上传的学术文献,如有不准确或可能侵权之处请联系本站站长:admin@fmread.com