进入以数字化,网络化、智能化为代表的工业4.0时代,科技快速迭代和工业应用场景不断创新融合,工业数据爆发增长的趋势不可阻挡。而当数据成为工业企业核心资产,成为企业的生命线后,对于数据存储的关注更是成为业界的焦点之一。
在《工业互联网平台的七种武器之数据治理》一文中,我们集中介绍了工业现场的多种数据类型,包括时序数据、结构化数据、半结构化数据,如GIS文件等、图像数据及视频数据等。
其中,在工业场景中我们发现80%以上的监测数据都是实时数据,且都是带有时间戳并按顺序产生的数据。基于此,本文我们将视线重点聚焦于工业现场极为常见的数据类型——“时序数据”,具体分析当下工业数据存储所面临的主要需求与挑战。
一、时序数据存储的需求与挑战
工业物联网时序数据是工业设备物理量的数字化记录,是带时间戳的数据,蕴含丰富的工业语义。
在工业领域, 生产、测试、运行阶段都可能会产生大量带有时间戳的传感器数据,属于典型的时间序列数据。时间序列数据主要由各类型实时监测、检查与分析设备所采集或产生,涉及制造、电力、化工、工程作业等。
因此,时序数据大多具有数据量大、元数据复杂以及针对查询的需求丰富等诸多特点,具体包括了以下几点:
海量序列存储:据IEC61400-25标准,风机每年运行7500小时将产生 6TB 数据;复杂元数据管理:C919试飞中有超过8万测点;测点数量等元数据随设备升级而改变;丰富的查询需求:数据降采样、数据空值填充、数据乱序处理;边云协同:端侧数据管理能力、云侧数据分析能力;无损压缩:时序数据价值密度比较低,需要具备一定的压缩比进行存储,而读取过程需要取到每个具体点位的准确数据,即无损压缩;性能需求:需支持几十万测点乃至上千万测点每秒的存储性能。具体,我们以一个典型的时序数据为例:
该数据由三部分组成:
时间戳: 对应__time字段,它是所有时序数据必有的字段,所有查询也都以时间为中心,比如指定时间段、时间粒度等进行查询;
维度列: 用于描述对应时点事件的维度信息,通常用于筛选过滤数据。维度列的值是可枚举,以字符串或整型存储,如示例数据中的mid、ConState、HmiPowLimit;
度量列: 用于聚合和计算的列。例子中,除了时间戳字段(__time)和三个维度列其他都是度量列。度量列通常是数值型,并且包含支持count、sum、mean等计算操作。
二、 传统关系型数据库为什么不适合存储时序数据?
时序数据的典型特性决定了其存取方面的特定需求,而这些需求传统的关系型数据库支持比较差,具体如下表所示:
由上表可见,传统的关系型数据库无法方便高效地处理时序数据从加载、存储到查询的多方面需求。为了更好的处理时间序列数据,不同于传统关系型数据库,时序数据库在数据摄入、存储、索引、查询等方面都进行了特定的优化,从而达到更优的数据加载、数据压缩、查询性能,适用于工业传感器数据的应用分析场景。
三、让数据增值的“秘密武器”—寄云时序数据库
随着物联网数据的激增以及运算能力的提升,工业大数据正在真正的进入落地阶段。
在工业场景中,寄云科技专门打造了针对海量时序数据的高性能、分布式时序数据库,主要包含时序数据库和展现平台两部分。通过Kafka数据采集调度模块,对外部历史文件数据进行批量采集调度,对传感器实时产生的数据进行实时采集调度,采集调度后数据经过数据交换、数据处理、数据存储后,在展现平台进行时序数据指标的动态监控,完成数据分析仪表盘等功能,或数据导出进行高级的数据挖掘服务。
寄云时序数据库系统支持批量和实时的数据加载,加载速度高达每秒千万级别测点,支持4-10倍的无损数据压缩,支持小时粒度可变时间片设置,支持类SQL查询、秒级查询响应以及上千的并发查询,数据图表实现可视化查询和分析,支持副本存储以保证数据安全,支持高可用和横向扩展。
目前,寄云时序数据库已在多个行业领域实现了落地应用,有效支撑了工业企业的物联网应用需求。
以某地方能源集团为例,某地方能源集团是全国领先的省级发电企业之一,业务以火电为主,涵盖了火力发电、新能源、煤矿开发、港口等多种业务形态。该集团原先对生产指标、损耗指标、效率指标的衡量都是通过下属企业抄表和填报的方式,无法真实反映集团真实的运营指标,因此严重影响了决策的实时性,因此希望构建一套基于设备实时生产数据的实时生产决策系统,从场端的实时数据库采集机组的实时运行状态,基于指标计算构建起来对机组发电量、负载、运行效率、损耗以及关键工艺的分析和预警,形成全方位的实时决策能力。
在该项目中,寄云时序数据库有效支撑了集团下属数十家企业全量生产数据汇聚与高性能查询需求,成功替换了在能源行业处于垄断地位的某国际时序数据库厂商,支持了生产环境超过400万点/秒的数据存储、汇聚、查询要求,帮助该能源客户实时汇集集团及下属单位生产数据,打破“数据壁垒”,纵向打通集团到板块、营运企业及其下属生产端的数据通道,横向集成各行业板块上下游以及外部数据资源,实现数据的集中汇集,有利于信息资源的统一管理和利用,也为后续开展集团各类产业的重要指标、运行参数和生产工艺流程的实时在线监视、针对性的异常报警和分析、生产运行监控、安全监控等数据智能应用奠定了良好基础。
· 寄云时序数据库五大功能 ·
加载服务:支持批量和实时的数据加载,加载服务是采用主从结构实现,主节点负责接收和分发加载及数据索引任务,实际任务由作业节点承担。批量加载和实时加载都需要通过该服务。数据服务:数据服务是采用是主从结构实现,主节点是协调节点和从节点是数据节点。协调节点负责数据节点的负载均衡,并通过规则管理数据的生命周期,所有数据分片的元数据信息都存储在元数据库中。协调节点通过监听元数据库,按照设定的规则通知数据节点加载数据在线/下线过期数据。查询服务:查询服务节点负责接收用户请求、分发查询、收集和合并结果。消息队列:为了实现实时/准实时数据的接入及多路分流,引入消息队列服务。在加载节点上启动消费者监听服务,采用pull的方式将队列中数据加载到时序数据库中。统一用户界面:统一用户界面针对多种角色用户:管理员/ETL人员/报表开发人员/分析用户/高级分析用户提供不同的使用入口,用户可通过该入口方便的对系统进行管理、发起加载作业以及进行各种可视化查询分析。· 寄云时序数据库八大特点 ·
加载:加载即索引;支持存量和实时两种不同数据加载方式;可达每秒百万级测点的加载速度;支持多源实时数据摄取,无写锁限制存储:支持最小为小时粒度的可变时间分片设置;无需任何配置即支持4-10倍无损数据压缩;在线数据及全量数据的两级数据存储;基于规则的在线数据动态加载查询:即载即查;支持十种不同粒度的时间维度聚合查询;亚秒级查询响应;支持上千的并发查询;支持SQL和JSON语言查询;支持java/python等常用语言开发接口;支持Restful API可视化:提供折线图、散点图、热力图、矩阵图、桑基图等多种可视化图形;提供自定义仪表盘高可用:支持设置副本数保证在线数据的高可用;无副本设置情况下,系统中其他数据节点将自动加载失效节点数据,重新提供完整服务数据加载与查询服务松耦合设计,减少某类节点的失效给整个系统带来的影响;支持主节点/服务的主备设置,进行分流/自动容灾,减少单点故障数据安全:HDFS的3副本存储保证二级存储的数据安全;实时加载使用消息队列保证系统加载服务失效时新数据不丢失;提供可选的原始数据的HDFS存储备份功能扩展性:独立扩展能力佳,可根据实际使用瓶颈进行查询/存储/加载性能等不同节点的独立扩展;易扩展性,直接扩展,无需额外的数据平衡操作;高扩展性,关键数据节点可扩展至支持PB级数据易用性:支持私有化/云部署;B/S结构的统一用户使用界面,基于角色的功能/数据访问权限管理,支持管理/开发/分析等不同类型用户的使用集资源/服务监控、元数据管理、加载任务开发、查询分析、多样可视化分析、仪表盘快速开发等功能于一体【小结】
数据是未来企业核心价值与竞争力。
在工业数据存储方面,寄云科技不仅提供了专门针对海量物联网数据的高性能、分布式时序数据库,还提供了针对工业指标分析类应用的PB级实时分析型数据仓库,实现海量IT、OT类工业大数据的融合架构,支持海量数据的分布式存储、查询和计算,为寄云科技NeuSeer工业互联网平台的数据存储和计算提供了一个强大的基础平台,支撑寄云科技以完整和专业的工业数据管理平台,通过新技术解决多源、异构、海量数据的全生命周期管理,通过大数据建模与分析释放数据智能的力量,提供设备预测性维护,设备运行效率优化,以及生产管理优化等智能数据应用,让数据增值,实现数据流动下的智能制造,更好实现工业企业客户数字价值的高效呈现,为工业企业实现数字化转型奠定数据基础。