APP下载

铁路信息资源管理系统设计与实现

2023-10-11张巧艳王爱丽路伟康王子腾任俊桦

铁路计算机应用 2023年9期
关键词:信息资源管理需求预测资源分配

张巧艳,王爱丽,2,路伟康,王子腾,2,任俊桦,2

(1.中国铁路信息科技集团有限公司,北京 100038;2.中铁信(北京)网络技术研究院有限公司,北京 100038)

随着铁路信息化进程的不断加快,铁路信息资源的数量和规模也在迅速扩大,为此,国内外均开展了信息资源管理相关技术研究,借助大数据、云计算等技术,对信息资源进行实时监测、优化配置和动态调整,从而降低企业生产和运营成本。然而,我国铁路行业尚未形成一套完善的信息资源管理体系,在信息化管理、配置使用、统筹管理等方面仍存在以下需求。

在资源信息化管理方面,需要应用信息化手段构建完整的信息资源管理台账,实现铁路信息资源申请、配置、使用、回收等环节的全过程信息化管理[1-2];在资源高效配置方面,需要对各类型资源分配使用情况进行监测分析,对资源使用率过低、资源负载过高、资源到期回收等情况进行预警提示,实现资源动态调整[3-4];在资源统筹管理方面,需要对当前资源使用情况进行分析评估,对未来资源需求进行分析预测,形成资源管理策略和资源扩容方案,为管理人员盘活存量资源、提高资源管理效率提供有效技术支撑。

因此,本文从铁路信息资源管理工作的实际需求出发,深入分析、梳理信息资源类型,开展资源需求分析与评估等关键技术研究,并基于微服务架构,设计铁路信息资源管理系统,实现对铁路信息资源的分级分类管理、全流程管理、需求预测和分析评估,为提升铁路信息资源管理和使用效率提供有力支撑。

1 系统架构

1.1 总体架构

铁路信息资源管理系统总体架构如图1 所示。

图1 铁路信息资源管理系统总体架构

1.1.1 数据服务层

汇聚铁路信息资源各类型数据,开展数据清洗、加工、整合、存储、分析等操作,按照资产设备数据、应用系统数据、资源申请配置数据、资源使用状态数据、资源运维管理数据和其他数据等类型进行分类管理。

1.1.2 技术服务层

综合运用分布式搜索引擎服务、轻量级业务流程引擎服务、数据可视化建模微服务组件、数据聚合统计分析微服务组件、UI 可视化组件库、统一安全认证服务组件、分布式文件共享服务和基于角色的访问控制(RBAC,Role-Based Access Control)权限的用户管理服务等,为系统业务功能开发提供技术支撑。

1.1.3 应用功能层

基于各类型数据信息和相关技术服务,实现资源分类管理、资源全过程管理、资源需求预测和分析评估等业务应用功能,为资源管理人员全面掌握信息资源、辅助优化决策提供支撑。

1.1.4 用户访问层

面向资源管理、资源配置、资源使用等用户,提供多层次、多维度、可视化的资源信息化管理和统计分析等功能,为用户提供方便、快捷、直观的系统使用体验。

1.2 技术架构

铁路信息资源管理系统技术架构如图2 所示。

图2 铁路信息资源管理系统技术架构

1.2.1 数据层

主要实现系统元数据、业务数据的管理,采用Mysql、Redis、Elastic Search、Fastdfs、MongoDB 等技术栈,提供持久化存储、分布式缓存、分布式搜索引擎等,并在保证数据安全存储的基础上,对热点数据性能进行加速。

1.2.2 服务层

前置负载均衡Nginx 集群,采用轮询的方式,分流所有前端的访问请求。采用微服务架构设计,选取Spring Cloud 形成统一的微服务开发框架,部分业务采用Springboot 单体应用设计。选用Gateway、Nacos、Openfeign、Ribbon 等微服务技术组件和Kafka 消息中间件,通过基础微服务和业务微服务实现系统的通用基础功能和业务领域服务功能。

1.2.3 展示层

包括Web 和App 形式,同时支持3D 模型展示。其中,Web 端采用VUE、Element UI、Webpack 等主流开发框架,在HTML5、ES6、CSS3 技术标准的基础上,支持多种主流浏览器的访问;App 采用Android 原生技术开发;3D 模型展示采用Unity 实时3D 引擎开发,提升模拟展示效果。

2 系统功能

铁路信息资源管理系统功能架构如图3 所示。

图3 铁路信息资源管理系统功能架构

2.1 资源分级分类管理

铁路信息资源主要类型包括硬件资源、软件资源、虚拟资源、应用系统资源等。其中,硬件资源包括物理服务器、存储设备、网络设备、安全设备等;软件资源包括操作系统、数据库、中间件等;虚拟资源包括虚拟机、计算资源池、存储资源池等。

资源分级分类管理模块支持对铁路各类信息资源进行汇集和分类管理,并构建相应的信息台账,包括:名称、编号、类型、网络、用途等基本信息,CPU、内存、磁盘等配置信息,使用率、分配量等状态信息,以及各类型资源的关联信息等。支持各类资源台账信息的添加、删除、修改、查询和下载等管理维护功能。

2.2 资源全流程管理

支持资源申请、审批、分配、使用、回收等全过程的信息化管理,提升资源管理效率。

2.2.1 资源申请管理

资源申请用户可在线填报申请材料,支持应用服务器、数据库、中间件等各类资源的具体需求填报和统计汇总。用户在填报过程中可对资源申请材料进行编辑和更新等操作,填报完成后可提交至资源审批流程进行审核。

2.2.2 资源审批管理

包括资源申请受理、审查和会签等流程。资源受理人接收到资源申请后,可在线查看并下载资源申请材料,审查申请材料的完整性和规范性并提交至审查人;审查人可分析判断资源申请的合理性,编写资源分配建议方案,并提交至资源管理单位会签;资源管理部门对资源申请内容和分配建议方案进行审核确认,完成资源审批流程。

2.2.3 资源分配管理

资源分配人可根据已审批完成的资源分配建议方案,配置相应的CPU、内存、存储、IP 地址和相关软件。同时,可根据资源利用率和资源使用期限,对已分配的资源进行二次分配和回收,提高资源使用效率。

2.2.4 资源使用管理

支持对各类型资源数量、分配情况、扩容情况、回收情况、CPU 使用率、内存使用率、存储使用率等进行统计分析;支持对资源CPU、内存和存储自定义安全阈值并设置报警提示。

2.2.5 资源回收管理

支持用户在线填报资源回收申请,以及资源回收流程在线审批操作。资源使用单位将回收申请提交至资源管理单位后,资源管理单位可在线审核资源回收条件并制定资源回收方案,由资源管理单位审批完成后,进行资源回收操作和回收确认。

2.3 资源需求预测与分析评估

通过对资源使用情况和需求进行估算和分析评估,为资源分配调整和扩容优化等提供支撑。

2.3.1 资源需求估算

分为硬件资源需求和软件资源需求估算,为资源分配调整提供依据和支撑。其中,硬件方面主要包括数据库服务器、Web 服务器和应用服务器的需求估算;软件方面主要包括内存需求和存储需求估算。

2.3.2 虚拟资源分配

支持物理机与虚拟机之间进行资源动态调配。通过虚拟资源调度策略对虚拟化资源进行动态按需分配,优化虚拟机资源的调度方式,解决资源利用率、能耗和负载均衡等问题。

2.3.3 资源需求预测

通过综合考量现有资源使用情况,对网络资源需求、业务资源需求等进行分析预测,并按年、季、月等不同时间范围进行展示,提出资源需求建议和提醒,为铁路信息资源高效管理提供数据支撑。

2.3.4 资源分析评估

支持对各类型资源的使用效率、分配情况、申请和回收等管理情况进行分析和评估,对资源使用率过低、负载过高、资源到期回收等情况预警提示,并通过图形、列表等多种展现形式,对资源统计分析和评估结果进行动态可视化展示。

2.4 其他管理功能

主要包括基础知识库管理、资源服务目录管理和系统管理。其中,基础知识库主要提供文档资料阅览和自定义创建编辑功能;资源服务目录提供服务项目说明,包括资源服务分类、服务配置信息、适用范围和服务策略等;系统管理包括用户管理、权限管理、日志管理等,为铁路信息资源管理系统运行和管理提供辅助支撑。

3 关键技术

3.1 工作流管理

为实现资源申请、受理、审批、分配、回收的全流程管理,采用工作流管理技术,将资源管理工作分解定义成不同的任务、环节和角色,并按照一定规则和过程来实现全过程的管理[5]。

本文基于Vue、Java 微服务实现自定义工作流的设计[6],主要包括流程环节设计、流程控制模式、流程表单设计和工作流引擎等。其中,流程环节设计根据资源管理需求,将整个资源管理流程分为申请、受理、审查会签、分配、确认等步骤,每个环节都对应相应的人员、处理表单、审查条件、审核操作等;流程控制模式主要包括顺序、并行分叉、同步、排他选择和简单合并等;流程表单设计根据不同环节资源填报需求,设计申请表、审批表、回收表等不同的表单数据项;工作流引擎采用主流开发引擎Flowable 框架,根据工作流控制模式和流程步骤的定义,对流程进行实例化,根据用户执行其中的任务来推动流程的进行,当用户填写对应的表单并提交后,工作流引擎按照对象的操作、当前的环节及流程步骤来跳转到下一个节点。

3.2 虚拟资源分配

软硬件资源配置完成后,需要对物理设备虚拟化。本文采用分组遗传算法解决虚拟机的资源分配问题,以尽量少的物理机来放置更多的虚拟机,以达到系统低能耗、负载均衡的目的[7]。

由于不同物理机规格不同,虚拟机部署方式也不同,需要依据虚拟机的资源需求,对物理机进行分组编码,再使用交叉的方法对物理机和虚拟机之间进行资源的动态调配。交叉过程中若出现具有重复虚拟机的物理机,则删除此物理机;删除后如出现孤立虚拟机,则进行回填[8]。交叉过程评估参数是单个物理机资源利用率和资源负载均衡的比值,评估参数值越大,资源利用率越高且负载更均衡。

3.3 资源需求预测

3.3.1 网络资源需求预测

通过评估实际工作量的需求进行网络资源的预测和分配。网络资源需求主要包括时间、带宽、可靠性和费用等服务质量(Qos,Quality of Service)指标。本文基于强化学习的网络需求预测方法,针对已知的工作量要求,实现工作任务到网络资源的映射[9]。通过强化学习调度器里的反馈机制,为每个工作任务提供一个近似最小化的网络资源供给方案,并逐个分析、执行和更新,最终得到工作任务需要的实际网络资源。

3.3.2 业务需求预测

通过实际的业务处理量预测CPU 的负载情况。对业务逻辑进行层次分析后,对业务指标进行归类,通过分析业务处理流程与资源消耗影响的变化曲线,找出影响资源使用的关键业务指标[10]。基于上述关键业务指标与资源消耗影响的历史数据,利用回归分析方法,建立资源需求和关键业务指标间关系的数学模型,用于未来同类型业务资源的需求预测。

4 系统实现

本文基于B/S 架构和前后端分离开发框架,采用瀑布及Scurm 的混合开发模式,以及分布式部署模式,设计研发了铁路信息资源管理系统,并在某铁路资源管理部门进行了试用,试用效果如图4 所示。

资源管理人员可更系统、更全面地了解和掌握各类型信息资源的基本情况和使用情况,实现了资源从申请、审批、分配、回收等全过程的信息化管理,并通过资源分析预测和评估预警,为资源日常管理和优化决策等提供了辅助支撑。

5 结束语

本文针对铁路信息资源信息化、高效化管理需求,设计铁路信息资源管理系统,通过资源需求估算、资源分配和资源预测等关键技术,实现了资源的分级分类管理、全流程管理、需求预测和分析评估等功能,为提升铁路信息资源管理信息化水平和资源配置管理效率提供了有力支撑。下一步将深入分析和挖掘资源数据信息,开展资产资源协同管理、资源智能调配等研究,进一步提升铁路信息资源智能化管理水平。

猜你喜欢

信息资源管理需求预测资源分配
基于贝叶斯最大熵的电动汽车充电需求预测
美军信息资源管理战略概况研究与启示
新研究揭示新冠疫情对资源分配的影响 精读
一种基于价格竞争的D2D通信资源分配算法
大数据在部队信息资源管理中的运用
浅谈西藏农牧业信息资源管理
云环境下公平性优化的资源分配方法
基于计算实验的公共交通需求预测方法
《信息资源管理学报》2016年总目录
中国中长期煤炭需求预测