物联网(IoT)技术在工业,农业,交通,物流等领域正在逐步的展现出巨大的潜力,尤其是在工业制造领域,传感器技术的发展极大的提升了决策者对生产情况和设备状态的掌控。
物联网数据特征
-
时序性:物联网数据是传感器实时采集,所有数据都带有时间属性,并且是按时间顺排列的。
-
连续性(流式数据):物联网数据会以密集而不间断的数据流方式导入到数据库系统中。
业务需求
工业领域设备采集的实时数据,不仅能用于设备状态监控和预警,还能够通过数据分析之后指导生产决策,提高生产的效率和质量。这样的业务场景对数据平台提出了3大需求:
大量的传感器以极高频(毫秒级)采集数据,数据平台需要保证足够的数据吞吐量以及时的接收并存储数据。
传感器的实时数据需要能够以动态图表的方式实时现到管理者的面前,让管理者能在最快时间对异常情况作出反应和处理。
物联网数据有着很强的时效性,超过一定时限对数据进行分析运算就可能会失去意义,所以需要系统能够随着数据流的导入实时动态地进行分析计算并展示结果。
解决方案
"工欲善其事,必先利其器"。工业物联网对数据库解决方案有着非常苛刻的要求,既要有非常高的吞吐量,又要有较低的延时;既要能够实时处理流数据,又要能够处理海量的历史数据;既要满足简单的点查询的要求,又要满足批量数据复杂分析的要求。DolphinDB正是这样一款高性能分布式时序数据库产品。
-
DolphinDB的内存数据库可以支持数据的快速写入,查询和计算,单点吞吐量达到GBps级别,能在高频写入的同时响应客户端秒级轮询。
-
采用点对点集群架构,任意节点都可以作为数据接入点,单点吞吐量不会成为系统的瓶颈。
-
支持分布式存储海量数据,单点统一查询,并且通过优异的缓存设计避免了磁盘IO瓶颈对吞吐量的影响。
-
DolphinDB的流计算引擎支持实时流计算处理。内置的聚合引擎可以按指定的时间窗口大小和频率来计算各种聚合指标,既可以是时间轴上(从高频到低频)的纵向聚合,也可以是多个维度的横向聚合。
-
DolphinDB集数据库、分布式计算和编程语言于一体,可以在库内快速的完成复杂的分布式计算,例如回归和分类,大大提升了海量历史数据的离线分析和建模速度。
从以下这张图中可以看到,DolphinDB结合物联网技术,让数据从生产设备采集到展示给决策者,最终又反馈用于指导生产,使得企业的生产能力进入一个不断自我提高的良性循环。
流数据引擎提供了流式数据的发布和订阅功能,使得数据流可以在节点之间、节点和客户端之间进行发布和订阅。流数据引擎可以和DolphinDB其他模块配合使用,从而实现流数据的实时运算与分布式存储。异步缓冲机制有效的隔离了耗时操作对高频数据吞吐量的影响。
结合流数据引擎的订阅功能,实时运算引擎可以对流式数据做实时的动态运算,并将运算结果形成新的数据流表,支持后续多级的订阅和运算。这种机制为实时流数据的复杂运算提供了极大的空间。
DolphinDB实现了Grafana,PowerBI, Promethus等数据展示平台的接口,方便用户监控实时数据。