1. 业务介绍
中国有色工程有限公司暨中国恩菲工程技术有限公司(原中国有色工程设计研究总院,简称“中国恩菲”)是中华人民共和国成立后,为恢复和发展我国有色金属工业而设立的专业设计机构,现为世界五百强企业中国五矿、中冶集团子企业。70 年来,中国恩菲在 30 多个国家和地区参与了 1.2 万个工程项目,业务主要包括非煤矿山、有色冶金、新高材料、能源环境、智能装备、数字智能等。
当前,中国恩菲正全力引领行业新基建变革,以国家战略为指引,在“双循环”格局下,加速“数字化、平台化、智慧化、国际化”转型,引领行业向智能、生态、智慧、绿色的方向持续发展,致力于成为最值得信赖的国际化工程综合服务商及能源环境发展商。
中国恩菲数字智能技术公司整合自原中国恩菲电气智能技术公司、信息技术中心、恩菲研究院数字工程中心的团队与技术,打造了涵盖技术创新、产品研发、工程服务等优势业务能力,集自动化、信息化、数字化于一体的智能化业务体系,划分四大业务板块,相互协同、融会贯通,为客户提供恩菲“MIM+”数字一体化解决方案与“1+1+N”项目定制化实施方案。
1 个平台:搭建一个集全信息可视化、全流程数字化、全周期数字孪生三位功能于一体的工业互联网平台。
1 个中心:建设一个覆盖全厂范围的大规模集控、无边界协同的智慧运营中心。
N 个应用:基于工业互联网平台开发 N 个智慧应用(含移动 APP),如:生产管理、能源管理、设备管理、质计管理、安全管理、环保管理、物流管理、工程管理、智慧决策、优化控制、仿真计算、数字孪生等,以及 N 个智能终端(含智能装备)。
在恩菲“MIM+”工业互联网平台中,时序数据库 IoTDB 介于数据采集节点与大数据平台和业务系统之间,作为统一数据采集管理模块中的重要组件,主要应用于智能工厂建设中智能装备和 DCS 系统的数据采集、存储、管理方向,实现了海量时序数据的高并发写入与低延时查询,并结合其配套的可视化控制台 Workbench 等工具,建立了清晰易操作的数据模型管理方案。
2. 选型考量
中国恩菲的有色金属智能工厂场景,时序数据的采集、存储、管理涉及超过 30 个自动化智能装备系统,设备类型繁多,采集测点数量超 10 万,秒级采集频率下可产生超 80 亿条数据,每天约产生超 50G 数据量,数据规模庞大且并发要求极高。
传统关系型数据库底层架构不是专门为处理时序数据设计,无法实现契合物联网设备层级结构的有效管理,开发人员查找设备测点对应数据存在困难,关系型数据库在处理大规模、高频率的时序数据时也会遇到性能瓶颈。即便可以采用集群分库分表方式解决性能问题,但该方案需要的服务器数量较多,开发运维成本非常高。
面对上述困难,时序数据库 IoTDB 的多项架构与性能优势,为中国恩菲提供了优于关系型数据库并契合智能装备系统监控场景的解决方案:
支持集群部署:IoTDB 集群的负载均衡、高可用、动态扩容等能力有效提高读写速度,降低了单节点宕机情况下业务系统受到影响的风险。
层级结构的数据模型:IoTDB 创新使用树形时序模型,完美解决了设备管理层级结构的存储问题,方便开发运维人员快速定位查找设备测点数据。
高效的写入、查询、压缩性能:IoTDB 基于自研时序文件格式 TsFile 支持列式存储,结合先进的编码技术与时序友好的索引结构,大大提高了数据存储效率,有效减少磁盘空间的使用量,并能够保障高并发、高吞吐写入与低延迟查询效能。
丰富的应用编程接口:IoTDB 提供多种应用编程接口(API),如 Golang,Java,Python 等,使不同开发人员无需担忧跨语言开发的复杂性,能够便捷高效地开展开发工作。
便捷的数据迁移能力:IoTDB 能够实现端-边-云协同,基于底层的统一数据格式 TsFile,能够无缝实现不同层级设备与系统间的数据流转,数据文件可以一次处理、多次使用,大幅节省网络带宽与接收端 CPU 资源。
功能齐全的可视化客户端:专为 IoTDB 配套的可视化控制台工具 Workbench 集成了丰富的数据库操作管理功能,可通过图形化方式快速完成业务设计,大大降低数据库使用的学习成本,一站实现时序数据可视化管理。
丰富的运维工具和完善的操作文档手册:IoTDB 配套提供集群管理、系统监控面板等运维工具,结合详细的用户使用手册,方便运维人员以更小的使用成本监测系统状态,并进行性能调优。
3. 解决方案
在恩菲“MIM+”工业互联网平台中,时序数据库 IoTDB 采用分布式集群部署,凭借其强大的横向扩展能力与性能优势,能够高效应对工业场景下海量时序数据的复杂管理需求。
首先,通过不同智能装备系统获取的各设备测点信息,借助 IoTDB Workbench 的数据模型批量导入功能,管理者与业务人员可批量完成设备测点层级结构的建模,方便对海量设备时序数据进行系统性、结构化管理。
建模完成后,各类自动化智能装备系统上报的时序数据汇总至数据采集节点,通过 API 接口写入时序数据库 IoTDB 中。管理者与业务人员可以通过 IoTDB Workbench 集成的丰富数据库操作管理功能,对存储在 IoTDB 中的海量时序数据执行查询、计算与分析,实时查看对应设备测点的数据趋势,并根据业务需要调整模型节点配置。
时序数据库 IoTDB 可以通过 API/SQL 直读模式,为统一数据采集管理模块的下游业务系统直接提供数据支撑,也可以通过集成的 IoTDB Flink Connector 读取能力,为大数据平台提供原始数据。大数据平台将基于业务具体需求对原始数据进行加工,将加工后的数据提供给下游业务系统。
目前,时序数据库 IoTDB 存储数据量级已经相当可观。以电解区域场景为例,目前 IoTDB 管理设备 359 个,测点 4971 个,采集频率为秒级,当前存储数据超 327 亿条:
在总数据量已达数百亿条,13 个通道并行写入存储的情况下,时序数据库 IoTDB 写入性能仍旧稳定保持在毫秒级,集群模式下表现出可靠的性能:
4. 应用场景
场景一:历史数据读取
时序数据库 IoTDB 可根据业务需要,读取特定设备测点的最新值,并提供给下游组态界面,应用于该设备测点的数据实时展示。
多线程查询测点数据代码如下:
以下结果可见,在 5 个线程同时分别查询 5 个设备测点当前值数据的场景中,时序数据库 IoTDB 查询结果均保持在毫秒级返回:
时序数据库 IoTDB 数据结果有效支持组态界面实时展示:
场景二:IoTDB 与 Flink 集成
Flink 是一个功能强大的流处理框架,适用于实时和批处理任务,具备高性能、容错性和易用性,广泛应用于多种数据处理场景。
通过在 Flink SQL Client 使用时序数据库 IoTDB 定制化集成的 flink-sql-iotdb-connector 软件安装包,可以直接应用 Flink 批处理或实时处理 IoTDB 中的时序数据。
比如调用 Flink 中的 Sink 操作,在一个 Flink Table 的 Streaming Job 中将数据写入到 IoTDB 中。Flink SQL 如下所示:
再比如调用 Flink 中的 Lookup Point 操作,将 IoTDB 中的 device 作为维度表进行 Lookup 查询。Flink SQL 如下所示:
5. 未来展望
中国恩菲通过深度应用时序数据库 IoTDB,构建了有色金属行业智能制造转型的核心数据底座。IoTDB 强大的数据处理能力与丰富的运维工具支持,精准契合了复杂生产流程中对海量数据进行实时管理与深度分析的需求,为中国恩菲的数字化创新实践提供了坚实有力的支撑。
未来,中国恩菲希望和时序数据库 IoTDB 共同成长,通过技术研发、应用拓展等多个维度持续发力,不断挖掘 IoTDB 在有色金属行业的潜在价值,全力追求更为卓越的应用成效,推进有色矿冶工程国际化、智慧化、数字化进程。