本文是一篇单一原创研究(类型a)的报告,题为《TorqueDB: Distributed Querying of Time-series Data from Edge-local Storage》,作者包括 Dhruv Garg、Prathik Shirolkar、Anshu Shukla 以及 Yogesh Simmhan,分别来自 Ericsson Research 和 Indian Institute of Science。本研究发表于 Euro-Par 2020 会议论文集。
本研究涉及边缘计算(edge computing)和时间序列数据库(Time-series Database, TSDB)在物联网(Internet of Things, IoT)应用中的结合。近年来,物联网设备数量的爆炸性增长催生了对分布式时间序列存储和分析的迫切需求,这些设备广泛应用于智慧城市、工业设施、智能家电等场景。由于传感器数据具有时间戳,时间序列数据的查询和分析成为物联网应用的核心需求。
传统方法通常将边缘设备生成的数据上传到云端,进行集中式存储与分析。然而,这种方法的不足之处在于:
1. 网络延迟可能导致响应时间变长,尤其对于需要实时反馈的闭环决策系统。
2. 云服务的计算与存储成本较高。
3. 数据隐私与安全性可能受到影响。
为了解决这些问题,研究者对边缘设备上的时间序列存储与处理展开了相关探索。当前,虽然已有时间序列数据库(例如 InfluxDB 和 Apache Druid)可以在云环境上执行复杂的时间序列查询,但它们在边缘和雾计算(fog computing)中的应用仍存在以下主要缺陷:
1. 现有系统缺乏分布式查询功能。
2. 边缘设备计算与存储资源有限,不足以支持复杂查询与大规模数据管理。
3. 时间序列数据库和边缘本地存储之间缺乏无缝集成机制。
基于这些背景,本研究提出 TorqueDB,一个支持分布式时间序列查询的边缘与雾设备协同系统,旨在填补现有技术的这些空白。
TorqueDB 的架构包括以下几个重要模块:边缘设备(edge device)、雾设备(fog resource)以及 Elfstore 和 InfluxDB。系统的总体模型如下:
1. 边缘设备:类似树莓派(Raspberry Pi),主要用于传感器数据的本地存储。使用分布式文件系统 Elfstore 对数据块进行存储和管理,每个数据块包含来自同一传感器的一天的数据,并附带元数据(如传感器类型、位置、时间范围等)。
2. 雾设备:作为边缘设备的统一网关,同时运行 Elfstore 服务以管理数据块副本和元数据索引。每个雾设备还运行一个 InfluxDB 实例,用于执行分布式的查询任务。
3. 组件集成与优化设计:
- 数据可以按需从 Elfstore 移入 InfluxDB,而持久存储保存在 Elfstore。
- 查询引擎主要运行在雾设备上,而非完全依赖云端,从而减少网络延迟与云端计算成本。
- 引入了查询规划(Query Planning)机制,通过两种策略(分区本地化与负载平衡)最大化系统性能。
TorqueDB 的查询处理被分为四个层次(Level 1-Level 4),具体步骤如下:
1. Level 4:元数据过滤
查询从雾设备的元数据索引开始,通过解析查询的时间范围和条件(例如时间戳的范围查询和特定传感器类型的过滤条件),在 Elfstore 中筛选出与查询相关联的数据块。为了实现高效过滤,时间范围被离散化为特定时间块编号来简化元数据搜索。
Level 3:进一步元数据过滤
在 L3 层次,查询可以根据数据块的统计信息(例如某列的最大值和最小值)进一步剔除不相关的数据块,以减少后续处理的负担。如果查询需要更为复杂的过滤条件(例如某列数值必须大于特定阈值),该过程将检索并使用额外的元数据进行筛选。
Level 2:并行数据查询与子查询执行
剔除不相关的数据块后,系统将相关数据块分发到不同的雾设备以平行处理。每个雾设备会从 Elfstore 中读取分配给它的数据块,将数据插入本地的 InfluxDB 实例,并执行对应的子查询。
Level 1:最终结果聚合与返回
所有雾设备的子查询结果被返回到查询协调器(Coordinator),随后在 L1 层完成汇总和进一步的全局聚合(如跨设备的汇总计算),最后返回给用户。
研究团队在 15 节点 IoT 集群上(包含 12 台树莓派和 3 台雾设备)完成实验,并使用 Microsoft Azure Cloud 上的 VM 作为对比基线。实验选择了来自 Sense Your City 数据集的 19.35M 行传感器时间序列数据。实验设置涵盖了六种查询模式(包括简单投影、多值过滤、简单与复杂聚合、时间窗口等),并对查询响应时间、数据块传输和查询规划策略的影响进行了分析。
查询性能分析
查询规划优化
缓存机制的贡献
未来研究计划包括将查询进一步下沉至边缘设备,以提升并行化程度;扩展支持更多的查询类型;并对不同场景、设备可靠性、多设备大规模集群环境下的性能表现进行验证。本研究的实践证明,TorqueDB 在应用价值和理论意义上的重要性,将为边缘计算领域的数据管理系统开启更广阔的研究空间。