Research on railway data asset management based on railway data service platform
-
摘要: 随着铁路企业公司化改革的不断深入,铁路数据的资产化以及服务于“强基达标、提质增效”的工作主题成为铁路企业越来越紧迫的需求。当前铁路数据资产管理还面临着资产盘点不清、共享困难、缺乏安全分级以及主数据不规范等一系列问题。文章明确了铁路数据资产管理相关重要环节,并基于铁路数据服务平台的服务能力和开发引擎,构建了一系列服务于数据资产管理应用,实现了数据从盘点、接入到安全分级和共享的全流程管理,在实践中取得了很好的应用效果。Abstract: With the deepening of corporate reform of railway enterprises, the capitalization of railway data and serving for the work theme of “strengthening the foundation, reaching the standard, improving quality and efficiency” have become more and more urgent needs of railway enterprises. At present, railway data asset management is also facing some problems, such as unclear asset inventory, difficulty in data sharing, lack of security classification and non-standard master data. This paper defines the important links of railway data asset management. Based on the service capability and development engines of railway data service platform, a suite of data asset management applications are constructed, which realizes whole-process data asset management involving inventory, access, security classification and sharing, and achieves good application effect in practice.actice.
-
随着铁路信息化事业的不断发展,中国国家铁路集团有限公司(简称:国铁集团)和各铁路局集团公司数据中心的设备及应用的数量快速增长,运维工作范围和工作量迅速增加,现有的运维监控系统逐渐暴露出监控功能单一、信息共享不及时、可视化程度低的弊端,越来越无法满足铁路数据中心运维工作的需求。
国内关于数据可视化技术的研究已取得不少成果,秦鹏针对既往运维可视化系统、监控系统的构造及设备管理和维护功能存在的问题提出了优化措施,阐明了三维机房运维可视化系统的设计和构造思路[1];龚昊等人提出利用二维、三维的图形交互展示来提高用户对海量数据的直观理解,为数据管理提供便利[2];闫海涛等人设计了一种电力三维可视化系统,用于电力设备及周边环境三维模型的创建及展示[3];高齐琦等人提出基于Three.js引擎的磁盘阵列三维可视化的框架,以此来创建真实的三维场景,给用户带来流畅丰富的视觉及交互体验[4];张玄等人提出利用Three.js特有的JSON模型文件格式来加强用户与系统的交互,以此提高管理效率[5];余莉利用Three.js的特性,实现了组合模型、外部导入模型的拾取及多对象拾取等特殊应用,基本满足了虚拟场景的交互需求[6];冯姣等人利用WebGL(Web Graphics Library)构建了数据驱动的三维飞行可视化系统,利用气动数据驱动,实时模拟飞行器运动轨迹,增加仿真效果真实性[7];赵海鹏等人利用倾斜摄影测量、Three.js、四叉树索引数据结构等技术设计了一款虚拟校园系统,较好地解决了模型纹理失真、建模周期长、效率低等问题[8]。
本文针对铁路数据中心运维监控系统的现状和存在的问题,设计了一种基于Three.js的运维数据可视化系统,为数据中心运维、巡检、管理人员和用户提供实时、规范、量化、准确的运维数据服务,对数据中心进行更准确、及时、有效地监控、预警和管理,降低数据中心运维成本,缩短报警响应处理时间,提高数据中心运维效率、安全性和管理水平。
1 系统架构
本文设计的数据可视化系统架构如图1所示,包括数据层、处理层、应用层。数据层通过接口集成铁路数据中心现有应用监控数据、数据中心基础设施管理系统(DCIM,Data Center Infrastructure Management)数据、智能巡检数据,数据来源包括运维支撑平台、铁路云平台、视频监控系统、动力环境监控系统(简称:动环监控系统)、楼宇自动化(BA,Building Automation)系统、移动巡检系统和机器人巡检系统等;在处理层对运维数据进行数据分类、数据格式统一和数据加工,确定各种报警阈值并定时同步更新,实现对各类运维数据的实时统计分析;在应用层通过Three.js三维引擎,将数据与三维展示环境中的场景、模型、标签等进行关联,实现各种运维信息可视化,从而对数据中心进行整体监控。
2 系统功能
系统包括5个功能模块:基础设施可视化,应用监控可视化,容量管理可视化,网络管理监控可视化(简称:网管监控可视化)和动环监控可视化,如图2所示。
2.1 基础设施可视化
包括机房可视化、机柜可视化和设备可视化,通过三维图形和列表的形式展示机房、机柜和设备的详细信息,管理员可对其进行增加、删除、修改、查询和统计分析等操作。
用户可根据数据中心楼层、机房、设备编号等进行查询。系统可显示设备对应的机房、机柜和单元位置,通过点击机柜标签,可显示机柜详细信息及其所有服务器的位置标识框,点击标识框后可显示服务器的详细信息。
2.2 应用监控可视化
负责接收铁路应用运维监控类系统的监控和报警信息,经处理之后在机房和机柜场景中进行可视化展示。数据来源包括运维支撑平台、铁路云平台及其他应用级监控系统。
2.3 容量管理可视化
此功能包括空间统计、功率统计、承重统计和机位统计。
(1)空间统计:系统可在三维可视化环境中展示机房、机柜空间容量的分布统计,根据不同的颜色区分机柜的单元位置使用情况;支持对机房、机柜空间的分布图可视化渲染表现,同时,支持通过鼠标移动和转动模型。
(2)功率统计:系统可在三维可视化环境中展示机房、机柜额定功率分布统计,或在其上方展示该机房的总功率和使用率,支持对机房、机柜功率分布图的可视化渲染,也支持通过鼠标,移动或转动模型,如图3所示。
(3)承重统计:系统可在三维可视化环境中展示机房承重分布情况统计,能够以柱状图的方式直观的展现当前机房中每个机柜的承重状态,让用户实时了解机房布局并进行有效调整。
(4)机位统计:系统在三维可视化环境中展示目前机房已经使用的机位与剩余机位情况。
2.4 网管监控可视化
包括性能监控展示和告警监控展示。
(1)性能监控展示:用户点击机柜上方的普通标签,可查看该机房监控的性能数据信息。
(2)告警监控展示:用户点击机柜上方的红色标签,可看到该机柜的所有告警信息。
2.5 动环监控可视化
包括不间断电源(UPS,Uninterrupted Power Supply)监控、温度云图、配电柜监控和精密空调监控。
(1)UPS监控:系统可展示用户查询区域内每个UPS的输入、输出、电压、电流、运行状态等监控和告警信息。
(2)温度云图:系统可以云图的方式呈现整个机房的温度、湿度环境信息。
(3)配电柜监控:系统可展示用户查询区域内每个配电柜的输入、输出、电压、电流、运行状态等监控和告警信息。
(4)精密空调监控:系统可展示用户查询区域内每台空调的温度、湿度、运行状态等监控和告警信息。
3 关键技术
3.1 WebGL技术与Three.js引擎
(1)WebGL技术
WebGL是一种基于OpenGL技术的3D绘图标准,它融合了JavaScript和OpenGL ES 2.0,为HTML5 Canvas提供了硬件3D加速渲染。WebGL能够运行在任何支持Web的系统中,不需要任何浏览器插件的支持,具有良好的兼容性和跨平台性。
本文利用WebGL技术,借助系统显卡,可在浏览器中流畅地展示中国铁路主数据中心园区的三维场景和模型,如图4所示。
(2)Three.js引擎
在基于WebGL的三维应用开发中, Three.js是较为主流的选择。Three.js是使用JavaScript编写的WebGL第三方库,是一款运行在浏览器中的三维引擎,可以通过它创建各种三维场景。与Unity3D、UE4等三维图形引擎相比,Three.js具有开源免费、容易上手、扩展性强等特点,且易连接Oracle、MySQL等各类数据库。
Three.js引擎的基本组件包括场景、摄像机和渲染器等。场景是用来容纳图形元素的容器,图形元素只有添加到场景中,其坐标、大小才有意义;摄像机定义可视域,决定场景中哪个角度的内容会显示出来;渲染器决定绘制结果及绘制方式。
本文通过Three.js加载器加载中国铁路主数据中心园区、楼层、机房和机柜的obj/mtl模型,使用Three.js提供的几何形状在机柜模型上绘制服务器等设备,便于提高用户与系统的交互效果。
3.2 机房温度云图绘制
温度云图通过聚合温度数据,以渐进的色带展现机房内的温度分布,在效果上优于离散点的直接表示,可更直观的展示数据的疏密程度及温度的实时变化。
在Three.js引擎中,温度云图具有自己的内部数据存储区和渲染器。
(1)创建温度云图实例后,通过调用setData方法进行数据的初始化,也可调用addData方法动态添加数据,实现数据的实时变化;
(2)将该方法与Three.js引擎相结合,获取温度云图画布;
(3)通过调用THREE.PlaneGeometry()、THREE.Mesh()、THREE.Mesh Basic Material()、THREE.Texture()等方法将温度云图展示在模型上方。var point = {x: 100, y:135, value:20, radius: 35 },其中,point代表机柜;x、y、value和radius分别表示机柜的 x 轴坐标、y 轴坐标、温度值和绘制的圆形半径,通过聚合每个机柜的上述信息绘制出整个机房的温度云图,绘制结果,如图5所示。
3.3 三维模型展示和动画效果
实际运用中,Three.js默认的几何形状和材质比较简单,不能满足用户需求。本文通过对机房、机柜的各项参数进行实际测量,借助3DS Max等建模软件还原机房机柜的实际物理位置及尺寸,建模完成后,将其导出为mtl和obj的格式模型,并导入系统。
通过三维可视化,可以增强不同种类运维数据的直观性、提高运维效率。将虚拟场景和真实数据相结合, 为数据中心的日常资产管理、工程建设等提供决策依据,加强对机房设备的监控。通过空间分布来展示固定资产位置, 提高管理人员的工作效率,如图6所示。
Three.js引擎封装了很多创建几何体的构造函数,本系统采用BoxGeometry()来创建机柜内的设备长方体,数据结构如下:
var cubeGeometry = new THREE.BoxGeometry (sizeX,sizeY,sizeZ);
var material = new THREE.MeshBasicMaterial ();
cube = new THREE.Mesh(cubeGeometry, material);
cube.position.x = positionX;
cube.position.y = positionY;
cube.position.z = positionZ;
其中,sizeX、sizeY、sizeZ分别表示立方体的长、宽、高;positionX、positionY、positionZ则对应立方体的位置坐标,是通过测量实际设备的尺寸和位置信息来获取的。
另外,为提高用户使用体验,通过调用Three.js引擎中的 THREE.BoxGeometry()、THREE.MeshBasicMaterial()、THREE.Mesh()、THREE.BoxHelper()等方法,实现根据绿、黄、橙、红等颜色区分机柜功率大小的功能。
3.4 数据动态实时加载
本系统中的三维模型和数据展示均采用了动态加载技术,根据需求快速切换不同的模型,即使机房设备模型数量较多,也不会造成运行卡顿。动态实时加载技术的原理是设置数据加载和移除阈值,当场景中的摄像机运动到一定位置时,加载该视角中所有的模型,此时可遍历该范围内的模型;当摄像机远离到一定程度,便移除此视角中的所有模型,循环往复直至遍历结束。同时,还可设置更新时间,即使三维模型较多,也可清晰、准确、实时查看所选的各项数据,保证数据可视化的实时性和准确性。
4 结束语
本文提出的基于Three.js的铁路数据中心运维数据可视化系统,可以对铁路各级数据中心的各类运维监控系统的运维数据进行规范化、可视化、集中化展示,为数据中心对应用、设备、环境资源进行安全高效集中管理提供一种高效、自动化、智能化的手段。该系统已在中国铁路主数据中心和国铁集团部分机房投入使用,实现了机房自动化巡检,为铁路信息机房及UPS配电机房的运维工作提供了技术支持,减少了运维人员的工作量,降低了数据中心的运维成本,是“绿色数据中心”概念的一种实际体现。
-
表 1 铁路数据服务平台提供的数据接入接口及其特点
接口方式 使用场景 身份认证 开发难度 适用的
数据类型RESTful 日增量小于500 M,单次传输小于50 M的数据 平台分配
访问令牌一般 结构化数据 FTP/
SFTP实时性要求不高,增量数据量较大,易于导出为文件的数据表 平台提供FTP/SFTP
账户密码容易 结构化/非结构化数据 消息队列 实时性要求较高、并发量和吞吐量较大的数据 用户名/密码 较复杂 结构化数据 表 2 铁路数据服务平台各类存储组件的特点及其适用场景
存储组件
类型特点和适用场景 分布式文件系统 处理PB级别的超大文件,扩展性强;
流式地访问数据,针对一次写入多次读取的使用模式;
对硬件设备的要求比较低,使用低成本的硬件会导致集群中节点故障率升高;
数据在系统中的每个节点上均衡分布,充分利用磁盘空间。数据仓库 支持SQL访问,只能处理结构化数据;
数据必须与数据仓库事先定义的模型吻合;
并行处理,对分析计算效率较高。内存数据库 高并发、低延迟、高可用;
适合数据关联性强、数据模型复杂的场景,一定程度上比NoSQL数据库更能保证 ACID 事务。对象存储 存储海量图片、音视频、日志等文件;
每个对象都有自己的属性,如创建时间、生命周期等。 -
[1] 李雅雄,倪 杉. 数据资产的会计确认与计量研究 [J]. 湖南财政经济学院学报,2017,33(4):82-90. [2] 闻克宇,王 龙. 大数据环境下铁路运营数据资产价值分析与展望 [J]. 铁道经济研究,2018(3):32-34. [3] 刘彦军, 李 平, 马小宁, 等. 铁路大数据资产管理平台的研究与设计[C]//第十二届中国智能交通年会大会论文集. 北京: 中国智能交通协会, 2017: 351-356. [4] 杨连报, 李 平, 马小宁, 等. 铁路主数据全生命周期管理研究[C]//第十二届中国智能交通年会大会论文集. 北京: 中国智能交通协会, 2017: 365-369. [5] 赵 冰,李 平,代明睿. 铁路大数据质量评估与优化方法研究 [J]. 中国铁路,2018(2):63-67. [6] 邹 丹,马小宁,王 喆. 铁路大数据平台架构研究 [J]. 铁路计算机应用,2019,28(8):1-4. [7] 武 威,马小宁,刘彦军,等. 铁路数据服务平台安全策略研究 [J]. 中国铁路,2019(8):63-68. [8] 张艳君. 林业统计数据质量评估体系及其应用价值分析 [J]. 农村经济与科技,2020,31(8):37-38. -
期刊类型引用(5)
1. 纪娟,黎恩,杨娟. 基于Web3D技术的三维可视化学习资源建设研究. 河北软件职业技术学院学报. 2023(04): 6-9 . 百度学术
2. 汪永吉,李春苹,雷霖. 基于Three.js技术的3D数字化动态展示的研究与应用. 信息记录材料. 2023(12): 158-160 . 百度学术
3. 曲左阳,王伟萌,朱韦桥. 基于马尔可夫性的云原生应用资源动态分配策略的研究. 电子技术与软件工程. 2022(07): 236-240 . 百度学术
4. 葛丽,汪祎,任思蓉,孙悦红. 基于ECharts和Highcharts的进口风险工业品数据可视化. 信息与电脑(理论版). 2021(10): 27-29 . 百度学术
5. 杨振娟,毕然. 计算机视觉在舰船锚泊运动可视化中的应用. 舰船科学技术. 2021(18): 55-57 . 百度学术
其他类型引用(9)