计算前移、数据减负、高效分析——DolphinDB 云边协同解决方案

DolphinDB dingyi
2025-12-03

随着物联网时代的发展,越来越多的设备被推向生产现场。无论是电力主变压器的振动监测、高速产线的质量检测,又或是无人机巡检与智能制造系统,所有现场都在源源不断地产生海量数据。人们原本以为,把这些数据上传至云端、再依靠云端算力完成分析是工业智能化的最佳路径。

但当传感器的采样频率从几十赫兹提升到几千甚至几万赫兹,当边缘设备要在极短时间内完成异常捕捉、风险判断、设备保护时,这一云端处理模式开始暴露弊端:高频数据根本传不完、传上去也来不及算;网络抖动时延不可控;许多工业现场还涉及安全生产、隐私数据和封闭网络环境,数据无法随意离开本地……

边缘计算兴起

于是,边缘计算开始流行:把部分计算能力从云端“前移”至现场,让数据在产生的地方就能被处理、分析和判断。从数据采集到分析再到告警,整个流程越靠近数据源,就越能保证实时性与可靠性。

然而,在真正落地时,它同样存在短板。

最突出的一点是边缘设备自身的计算资源有限。许多工控机采用 ARM 处理器,CPU 性能与存储容量都无法与服务器相比。当传感器以 8kHz、20kHz 甚至 50kHz 的频率持续产生多通道数据时,基于本地算力的实时处理常常难以跟上。而某些工业场景又要求秒级、甚至毫秒级的响应速度,传统脚本的处理方式往往无法满足要求,处理稍慢就会错过异常瞬间。

此外,边缘计算的理念并不是替代云,而是缓解云端在物联网时代的数据处理压力,让云边协同更加高效。因此,各边缘设备独立处理完本地数据后,需要将处理后的结果同步汇总到云端设备中进行分析,数据同步需保障实时性和准确性。

既能在边缘环境跑得动,又能提供强大的实时计算能力,同时还能与云端良好协作——这才企业真正需要的边缘计算方案。

DolphinDB 云边协同方案

在此背景下,DolphinDB 推出了满足企业需求的云边协同解决方案

1203-1.jpg

DolphinDB 云边协同解决方案

该方案将 DolphinDB 部署在边缘设备上,使其能够直接接入来自传感器的高频数据流。依托 DolphinDB 的流表机制,数据在抵达边缘端的瞬间就能进行实时处理,主要包括原始数据的减量落盘异常数据录波指标计算等。DolphinDB 的流式计算能力有效避免了边缘设备在处理全量数据时的资源瓶颈,也确保了告警与分析的实时性。

在本地完成数据处理后,DolphinDB 还能通过远程调用、定时同步、数据订阅等多种方式,将关键结果稳定地同步至云端。其高可用架构支持节点故障自动切换、数据冗余备份和事务一致性保障,确保即使在本地节点异常或网络波动情况下,数据依然能够安全同步,实现真正的云边协同。

电力设备振动监控与故障诊断实例

接下来,我们通过一个电力行业的实例展示 DolphinDB 云边协同解决方案。

某电力监测设备生产商希望在工控机中内置振动监控与故障诊断功能,助力搭建边缘端 SCADA 系统。其边缘设备为 ARM 工控机,采样频率可达 8KHZ~50KHZ。生产商将 DolphinDB 安装在主变震动监测和故障预警设备内(边端设备),使用 DolphinDB 在边端设备进行实时流数据处理,并将处理后的结果上传至服务器,实现云边一体。

在该场景中,DolphinDB 主要实现了以下功能:

  • 通过流计算引擎解决边端设备硬盘空间太小和全量数据计算的问题;
  • 通过流数据引擎实现减量落盘+波形录制;
  • 通过 Signal 插件实现波形计算和傅里叶变换;
  • 通过向量化编程、Array Vector 计算提高数据处理效率;
  • 数据备份、数据迁移;
  • Grafana 可视化展示,并实现反控。

// 边缘端数据降采样及异常录波展示

基于以上案例,我们构建了一个轻量化的实现版本,用于在边缘侧快速验证 DolphinDB 的能力。此示例主要聚焦两项核心功能:对高频数据进行降采样处理,以及在出现异常时自动完成前后波形的录制

Step 1:创建分布式库表

创建 4 个分布式表:

  • warnDB,用于存储异常记录;
  • waveDB,用于存储波形峰值趋势;
  • alterWaveDB,用于存储异常波形;
  • waveDB5M,用于存储降采样后的原始数据。

Step 2:创建流表

创建 5 个流表:

  • wave,用于接收 python 解析后的振动数据;
  • wave5M,用于转存降采样后的原始数据;
  • stwave,用于存储波形峰值;
  • warn,用于存储异常记录;
  • windowOutput1,用于存储异常波形数据。

Step 3:数据处理

创建时间序列引擎,对原数据进行降采样。本例中,时间窗口及步长均为 5 分钟,引擎会将输入的数据按时间进行聚合,每五分钟聚合一次并返回最后一条记录存储到 wave5M 表中。

同时,创建两个订阅:

  • down_sampling 订阅 wave 流表,并注入时间序列引擎中进行降采样;
  • save5mToDFS 订阅 wave5M 流表,将降采样后数据存入分布式库表中。

使用时序引擎计算每秒波形峰值:

1203-2.png

创建异常检测引擎,进行异常检测:

1203-3.png

创建 windowjoin 引擎,订阅 warn 和 wave ,录制异常波形:

1203-4.png

Step 4:结果验证

使用以下脚本模拟 4 通道 256 测点数据的实时写入,采样频率为 50HZ:

1203-5.png

注:本文模拟生成的数据完全随机,故计算结果可能存在差异。

我们可以按需对这些数据进行查询。例如:

查看降采样后数据:

1203-6.png

查看峰值趋势表,每秒保留该通道的最大及最小值:

1203-7.png

查看异常告警表输出:

1203-8.png

查看异常波形表:

1203-9.png

异常发生时前后一秒的数据均被记录

通过在边缘端部署 DolphinDB,设备能够实时完成降采样、峰值计算、异常检测与录波等操作。与此同时,依托远程调用、定时同步、数据订阅等方式将核心结果及时上传至云端,兼顾本地实时判断云端全局分析的双重需求。

除了电力设备振动监测,DolphinDB 还能快速适配更广泛的工业物联网场景,让数据在现场就释放价值,并与云端形成紧密协同,为企业构建真正高效、可靠的云边一体化数据体系。如果您对 DolphinDB 云边协同方案感兴趣,或想了解 DolphinDB 在物联网领域的更多实际案例前沿应用,欢迎关注我们,第一时间了解最新动态与技术干货!