存算一体、云边协同:DolphinDB 为石油化工行业设备监测打造高效数据底座

2 小时前9.2k
石油化工设备监测转向实时预测维护。微科机电用DolphinDB替代SQL Server+C#,解决海量振动数据存储、信号处理与毫秒级告警难题,实现云边协同,百亿数据查询仅25.6毫秒。

在石油化工领域,设备监测正在从定期巡检、事后维修的传统模式向实时监测和预测性维护的新模式转型,传感器数据逐渐成为设备健康管理和故障诊断的核心资产。机泵群、反应器等关键设备的振动、温度等信号,直接关系到生产安全与设备寿命。这类数据往往具有测点数量庞大、采集频率高、数据结构杂乱等特征,单日新增数据可达亿级,长期保存后总规模可达万亿级。

浙江微科机电有限公司是 DolphinDB 的长期社区合作伙伴,专注于工业设备物联网智能监测和故障诊断系统研发,在石油化工行业,尤其是在中石化的机泵群在线监测等项目中,已有众多应用落点案例。面对工厂设备振动的异常检测与告警这一具体场景,用户的核心诉求在于:

  • 准确性:从振动波形中准确识别真正的设备异常,避免误报漏报;

  • 实时性:异常须在毫秒级报出,不能因告警延迟而耽误处置。

随着数据量增大,原基于 SQL Server 的传统方案已难以满足业务需求。用户改用 DolphinDB 方案后,经测试,百亿数据测点最新值查询仅需 25.6 毫秒,全表按天聚合统计仅需 138.9 毫秒,很好地满足了数据承载与实时告警需求。

SQL Server + C# 方案:面对大数据量难以为继

用户原本采用的是存储靠 SQL Server、计算靠 C# 的传统模式,现场设备数据经 C# 程序解析后写入数据库,振动波形的滤波、傅里叶变换等信号处理则需要在 C# 中另行实现。这套方案面临以下挑战:

  • 大数据承载难,大客户接不住:在中石化设备监测场景中,除了数据规模有限的小客户,微科机电也不得不面对数据规模更加庞大的大客户,此类客户的日新增数据规模可达 1 亿条,信息中心三年存量数据规模约 3 万亿条。SQL Server 这种传统关系型数据库存在显著的存查性能瓶颈,对小客户应用支撑尚可,但面对持续产生海量数据的大型单位,为保障性能,不得不拆分成多个子系统分别部署,运维成本急剧上升。

  • 滤波计算开发复杂,算法实现效率低:对设备振动波形进行异常检测的难点在于,不能把波形突变等同于异常,也可能属于正常的噪音范畴,必须依赖窗口滤波、加权平均等时序窗口计算手段来提升告警准确性。在原有方案下,用 C# 实现窗口滤波和傅里叶变换等算法,相当于要从头开发,实现起来很复杂,且难以保障运行效率。

  • 告警延迟严重,难以满足时效性要求:原方案采用计算逻辑与数据存储相分离的方式,导致数据搬运和外部计算链路冗长,一旦数据量增大,告警延迟会急剧恶化。而设备监控对实时性要求极高,异常必须在毫秒级内完成波形判断并报出,否则几分钟乃至十几分钟的延迟,很可能已造成难以挽回的损失。

DolphinDB 方案:存得下、算得快、报得准

面对上述痛点,用户在前置服务器端部署 DolphinDB 单节点,开发了一套轻量而高效的数据采集与分析系统,即可轻松应对实时告警需求。

跳出案例本身,在工业物联网设备监测场景下,DolphinDB 能做的不止于此,而是能形成一套存算一体、云边协同的完整解决方案:

  • 在云端(信息中心)部署 DolphinDB 高可用集群,承载全量历史数据,实现批量分析;

  • 在边缘端(厂区)部署 DolphinDB 单节点,负责边缘端采集与实时计算。

图片改.jpg

这种“中心集群 + 边缘节点”的协同架构,既满足海量数据的长期存储与分析需求,又保障了现场告警的实时性,真正实现“存得下、算得快、报得准”:

  • 海量数据存查性能卓越:分布式存储,突破单机数据库容量天花板;通过 DolphinDB 的物联网点位管理引擎,实现多种异构数据在同一列中统一存储,既节省了存储空间,也避免了查询时的类型转换开销;面对海量数据,不再需要拆分多个子系统,大幅降低部署与运维成本。

  • 提供开箱即用的强大信号处理能力:DolphinDB 内置大量窗口计算函数,可直接用于振动波形的加权平均、滤波等处理,复杂计算逻辑无需从零开发;官方 Signal 插件集成了高性能 FFTW3 傅里叶变换库,使数据处理能够以几行脚本高效完成。

  • 存算一体,大幅降低告警延迟:计算过程在库内即可完成,不必在数据库与应用程序之间来回搬运数据,计算链路大幅缩短,告警延迟得以压缩。

  • 生态完备,可兼容既有技术栈:DolphinDB 具备丰富良好的生态,提供多种功能完备的 SDK,C#、Java 等程序均可直接调用其接口和内置函数,无需对既有技术栈做大幅改造,既节省了部署成本,也确保了算法的运行效率。

  • 云边协同,各司其职:云端信息中心部署的高可用集群凭借高算力承载全量历史数据,支撑跨厂区、长周期的复杂分析与运营优化;边缘端 DolphinDB 单节点用于实时异常检测,就地完成分析,同时在端侧仅保留短期数据以控制资源占用。

关键代码实现

使用 DolphinDB 脚本进行傅里叶变换可参考signal。Signal 插件是官方提供的信号处理函数库,社区版即可加载使用。

根据用户需求,需要通过 DolphinDB 脚本将业务逻辑封装成函数视图,并提供给 C# 程序调用。以下代码演示了如何从 DolphinDB 中过滤查询数据,对其进行快速傅里叶变换,并返回计算结果。

def getFFT(devID){

    //模拟数据源

    tb = table(rand(1..100,10000) as id, (now()-9999)..now() as ts, norm(50, 40, 10000) as value)

    y = select value from tb where id = devID and date(ts) = today()

    return signal::fft(y.value)

}

addFunctionView(getFFT) //将自定义函数持久化到系统中,作为可被公开调用的用户函数

构建 DolphinDB 的函数视图,使 C# 程序可以通过 SDK 来调用函数。

//1. 建立dolphindb连接

DBConnection conn = new DBConnection();

conn.connect("localhost", 8848, "admin", "123456", "try{loadPlugin('signal')} catch(ex){}");

//2. 调用快速傅里叶变换函数

//C# SDK提供两种调用functionview的方式:简单参数按照字符串方式传入;复杂参数可以通过构造本地对象传参。示例如下

//2.1 按字符串方式传参

BasicComplexVector res = (BasicComplexVector)conn.run("getFFT(55)" );

//2.2 按对象方式传参

//List<IEntity> args = new List<IEntity>();

//args.Add(new BasicInt(55));

//BasicComplexVector res1 = (BasicComplexVector)conn.run("getFFT", args);

//3. 获取返回的复数结果

//DolphinDB中用两个浮点来保存复数, Double2类型包含x实数,y虚数两个部分。

List<Double2> v = res.getDataArray();

System.Console.WriteLine(v[0].x); //实部

System.Console.WriteLine(v[0].y); //虚部

百亿数据毫秒级查询,为工业设备健康管理提供新路径

在实测中,通过 C# 读取数据,并调用 DolphinDB 的 Signal 插件,能够得到准确的傅里叶变换计算结果,验证了在 DolphinDB 中实现振动异常识别的可行性。此外,在百亿级数据规模以及包括遥信浮点、遥测浮点、遥测整型、开关状态布尔量等多种数据类型的测试环境下,结果显示:百亿数据测点最新值查询耗时仅需 25.6 毫秒,对全表进行按天聚合计算数据条数耗时仅需 138.9 毫秒。

当单日亿级数据、三年万亿级存量与毫秒级告警时效要求同时摆在面前,传统存算分离模式已难以为继。DolphinDB 以高性能分布式存储打破容量瓶颈、以内置函数与插件提供开箱即用的强大信号处理能力、以存算一体架构和完善的 SDK 让计算下沉到库内,回应了用户对告警准确性与实时性的核心诉求。

工业物联网的数据架构正从“多组件拼装”走向“存储、计算、流处理一体化”,国产时序数据库在化工等关键行业的落地,正是以更高的性能、更低的开发门槛和部署成本,让原本受制于技术条件而难以实现的业务能力成为可能。随着 DolphinDB 在振动监测、异常告警、边缘计算等场景中的持续打磨,将为更多工业企业的设备健康管理提供一条可行的创新路径。


格隆汇声明:文中观点均来自原作者,不代表格隆汇观点及立场。特别提醒,投资决策需建立在独立思考之上,本文内容仅供参考,不作为实际操作建议,交易风险自担。

App内直接打开
商务、渠道、广告合作/招聘立即咨询

相关文章

2026年全球发梳市场规模达到9.81亿美元

细分市场报告智库 · 3分钟前

cover_pic

2026年全球玻璃纤维增强环氧管道市场规模达到23.77亿美元

细分市场报告智库 · 10分钟前

cover_pic

2026年全球对羟基苯甲酸市场规模达到1.03亿美元

细分市场报告智库 · 14分钟前

cover_pic
我也说两句