为保障核反应堆安全有序运行,控制室操纵员需要通过监控平台持续关注大量仪表数据,对系统可能出现的异常做出快速反应。因此,一个自主、实时、可靠的数据监控平台对保障核反应堆安全至关重要,而监控平台离不开“硬核”的国产数据库支持。本文旨在介绍中国核动力研究设计院如何将 DolphinDB 作为核心组件,搭建控制室人机界面设计组态平台,以满足其实时、可靠的监控需求。
控制室人机界面设计组态平台
——"NICE"平台
控制室是操纵员监视和控制反应堆运行的重要场所,良好的人机接口设计是保证控制室发挥作用的前提。为了研制出一款更敏捷、更灵活、更友好的控制室人机界面设计组态平台,中国核动力研究设计院设计所四部研发团队经过近两年的持续投入,自主研发了一款全新的控制室人机界面设计组态平台——"NICE"平台。
"NICE"平台项目画面示例
专注自主研发,掌握核心技术
"NICE"数字化平台采用 C/S架构,关键代码由中国核动力研究设计院设计所四部团队人员自主编写,部分代码使用开源库,数据库产品选取具有高安全性且排名国产第一的 DolphinDB(参照了国际第三方机构 DB-Engines 时序数据库排名)。
研发团队通过发挥新技术的后发优势,基于原生软件技术,并集成开源软件及成熟商业产品,完全掌握了控制室人机界面设计组态平台的研发能力,打通了从设计到实现的关键环节。
"NICE" 1.0 软件功能架构,DolphinDB 为重要组件
"NICE"平台可以快速完成人机交互界面的设计与组态,实现对全系统的实时监视和控制,并支持海量数据的存储、查询,为实现数据智能化分析奠定基础。其组态软件使用图形组件化思想,用户可专注于图元的设计、逻辑脚本的编写及不同图元的连接关系,简化人机界面软件开发流程,极大减少重复工作;同时,NICE 平台支持软件功能的高扩展,支持以插件方式对功能模块进行扩展,便于先进技术、智能技术的引入和应用。
业务亮点:用 DolphinDB 替换 MySQL,
实现百亿行表毫秒级加载
DolphinDB 是一个基于数据库管理系统,支持数据分析、流数据处理的低延时平台,内置强大的编程语言和高容量高速度的流数据处理框架,为海量时序数据的快速存储、检索、分析及复杂计算提供一站式解决方案。
在构建 NICE 平台的过程中,如何实现对海量数据的快速存储查询分析,一直是 NICE 设计团队主要的研发方向之一。随着业务中仪表测点的大幅增多和采样频率的增加,原本基于 MySQL 搭建的旧系统已经无法满足大量数据并发写入、实时查询和聚合计算的需求;同时,在使用仪控设备的过程中,技术人员需要持续关注实时数据,对系统可能出现的异常状态做出快速反应,这对系统的实时数据处理能力提出了很高的要求。经过多轮测试比对,核动力研究设计院研发团队选择用 DolphinDB 替换原有的解决方案。
1. 百亿行表毫秒级查询响应
在使用 DolphinDB 前,中国核动力研究设计院使用一套基于关系型数据库 MySQL 搭建的系统存储秒级时序数据,但在存储1-2天、几千个测点的数据后,整个数据库系统已经彻底无法工作,不能应对数据量剧增情况下的实时查询和及时反馈。而在使用高性能的时序数据库 DolphinDB 后,可以实现百亿行表的毫秒级加载,无论是最新数据还是历史数据,都能实现毫秒级查询响应。这就完全满足了中国核动力研究设计院对实时操作的需求,并且系统非常稳定。在使用最低硬件配置的条件下,使用 DolphinDB 采集1万测点,写入耗时仅在100毫秒之内。
2. 高可用集群便捷部署
DolphinDB 可以实现集群高可用。使用初期,仪控团队成员对 DolphinDB 进行技术预览,仔细研究了数据库特征和技术细节。在 DolphinDB 的技术支持部门的协助下,仅在半个月内就完成了方案部署,实现了原有系统代码向 DolphinDB 的切换以及高可用集群的便捷部署。
3. 强大的分析和建模工具助力仪控
DolphinDB 强大的脚本语言、对标准 SQL 的支持和内置的 1000 多个函数,为仪控团队提供了快速分析和建模的工具,对海量历史数据的分析结出累累硕果,帮助生产和设备工程师优化生产工艺,提升设备维护效率。
展望未来之路
作为国产自研的高性能时序数据库,DolphinDB 助力中国核动力研究设计院研发团队解决了大量数据并发写入、实时查询和聚合计算等难题,实现万级测点毫秒写入,在实际业务中得到了客户认可。在未来, DolphinDB 与中国核动力研究设计院将继续携手共进,并计划加强大数据分析等领域的合作,使业务实现更加即时、准确、高效、智能的决策。
本文内容部分引用自公众号“硬核小螺号”《深耕自主研发 | 迈入控制室人机界面设计新征程》一文。