谢晓娜,常政威,陈亚军
(1.成都信息工程学院控制工程学院,四川 成都 610225;
2.国网四川省电力公司电力科学研究院,四川 成都 610072;
3.华北电力大学,河北 保定 071003)
电网信息系统状态评价技术研究与应用
谢晓娜1,常政威2,陈亚军3
(1.成都信息工程学院控制工程学院,四川 成都610225;
2.国网四川省电力公司电力科学研究院,四川 成都610072;
3.华北电力大学,河北 保定071003)
摘要:针对电网信息系统状态检修,提出了一种电网信息系统状态评价及短期预测方法。通过充分探讨建立了信息系统状态评价指标体系,并根据各级指标重要程度赋予其相应权重。实现对B/S构架信息系统整体状态的监控和评价,并以信息系统历史状态作为训练样本预测其短期状态,成果将作为重要部分应用于电网信息系统状态检修。
关键词:信息系统;状态评价;短期预测;状态检修
0引言
“十二五”期间,国家电网公司全面建设坚强智能电网,推动公司和电网创新发展、集约发展、安全发展,信息化工作已成为国家电网公司实现战略发展目标的基础工程和重要保障[1]。国家电网公司SG186信息系统、SG-ERP系统等业务信息系统[2]的大量投入运用,在对公司业务工作支撑力不断提升和主营业务大幅度融合的同时,也使信息系统的规模急剧膨胀,而新系统、新技术的不断应用,使系统出现故障的可能性也随之加大,对系统稳定性和系统管理者的要求也随之提高。如何提高信息系统检修的工作效率、工作质量、安全、稳定等问题也随之突显。因此,采用创新的管理思想和现代计算机技术手段,保障信息系统的安全、降低生产成本、提高企业竞争力,成为电网企业的当务之急。正是在这种背景下,信息系统状态检修已然成为电网检修模式改变的一种必然趋势。
信息系统状态检修的基础是对于信息系统状态的监控与评价,国家电网公司企业信息系统现阶段主要采用B/S构架,B/S模式信息系统主要结构包括应用服务器和数据库服务器,因此对于应用服务器和数据库服务器内部状态和外部状态的监控与评价成为信息系统状态评价研究中最为重要的环节。
信息系统检修是信息运维人员工作的重要内容,信息系统的状态检修也是必然发展趋势[3-4]。目前国内对于信息系统状态检修的研究还处于起步阶段,大部分研究者对于信息系统状态的监控和评价仅停留在整体的设计思路上面,并没有继续向下延伸到各具体部分状态的研究。也正是基于此,给出了一种对于B/S信息系统状态全面监控与评价的方法,并给出对于信息系统状态短期预测的方法,为信息系统状态检修提供更为具体的研究思路和实现技术参考。
1评价系统总体设计
国家电网公司企业信息系统现阶段主要采用B/S构架,下面主要针对WebLogic服务器和Oracle数据库服务器搭配技术路线的大型信息系统开展研究。图1为信息系统状态评价系统的总体设计框架。
图1 信息系统状态评价系统的总体设计框架
由图1可知,所述系统主要包括健康状态划分与测试、健康数据采集、状态评价与预测和健康状态存储系统这4个部分。健康状态划分与测试主要是建立所述评价系统的评价指标体系以及对于信息系统健康度的合理划分;健康数据采集模块是实现对WebLogic服务器和Oracle数据库服务器内在及外在状态数据的监控,并将监控数据存储于健康状态存储数据库中,为状态评价模块提供实时数据来源;状态评价与预测模块实现对信息系统当前状态的评价,并结合信息系统历史状态数据给出对信息系统状态的短期预测;健康状态存储系统即建立的存储数据库,负责所述评价系统涉及的所有数据的存储。
2健康状态划分与测试
根据B/S架构系统的特性,将整个系统状态划分成两部分,即WebLogic服务器状态和Oracle服务器状态。这两个服务器又有各自不同的子状态,这些状态量,根据WebLogic 和Oracle数据库的官方文档、书籍介绍和运维人员的建议,对采集到的指标进行了状态划分,每一种状态有相应的阈值,这些阈值也是参考的文档、书籍以及运维人员的经验,得到每一个状态量都划分为4种状态:正常状态、注意状态、异常状态、危险状态,各状态对应给出分数如表1所示。
表1 状态划分表
LoadRunner是一种预测系统行为和性能的负载测试工具[5]。测试分析是根据LoadRunner自动生成的各项指标测试结果统计图,如测试简述图、事务平均时间响应图、系统资源图等,从中了解和判断被测系统在不同压力测试下的运行状况以及系统资源的使用情况,对它们进行关联分析,从而确定系统指标不同状态的阈值。通过模拟上千万用户实施并发负载和实时性监测的方式来确认和查找问题,将测试得到的性能指标值与定义的指标状态阈值进行对比,从而验证阈值的正确性。同时,经过测试实验,定义了各级指标权重如表2所示。
3状态数据采集
根据B/S系统的分层,将状态监视采集系统也分成相应的子模块分别对每层进行监视。状态监视采集系统由3个子状态监视采集系统构成[6~7]。分别是Weblogic服务器数据采集程序、Oracle数据库数据采集程序、Oracle宿主机数据采集程序。它们对相应的模块按照设定的频率进行采集,将采集到的数据持久化后,由主程序进行读取,然后按照状态定义分别对数据进行相应状态的划分,最后得出当前系统状态的评价。
Weblogic服务器数据采集程序[8]能够获得服务器内JMS信息、进程信息、线程信息、JVM内存信息、CPU使用率等一系列服务器数据。在获得信息状态数据之后,可以对数据进行分析,从而得出服务器现阶段状态。
逻辑流程如图2所示。程序启动后,首先检测Weblogic服务器是否启动,如果没有启动,则进行报错,提示服务器没有正常启动。如果Weblogic服务器正常启动后,则启动系统数据采集子程序以及Weblogic服务器数据采集子程序,相应的子程序按照相应的时间频率刷新重新采集相应指标,主程序按照相应的时间频率获得相应数据后,程序将数据写入到MySql数据库中。
表2 指标权重定义
图2 Weblogic服务器数据采集程序运行流程
Oracle数据库数据采集程序能够获得服务器内执行队列、等待执行队列、数据库命中率、SQL读写数、数据库使用率等一系列数据库服务器状态。在获得信息状态数据之后,将数据写入到MySql数据库中。
流程逻辑如图3所示。程序启动后,首先实例化3个子数据采集程序,并设置相应的采集频率。设置完毕后,则按照相应的频率各子程序采集数据,并将采集得到的数据存储到数据库中。
图3 Oracle数据库监控程序运行流程
Oracle宿主机数据采集程序能够获得客户端服务器的CPU状态信息、交换区信息、内存信息、硬盘信息等一系列客户端服务器状态信息。在获得状态信息数据之后,可以将数据储存到MySql数据库中。
流程逻辑如图4所示。程序启动后,首先实例化4个子程序监控系统,并设置相应的采集频率。设置完毕后,则按照相应的频率各子程序采集数据,并将采集得到的数据反馈到服务器上。在获得相应数据后,程序对数据进行分析并进行相应的状态提醒。
图4 Oracle宿主机数据采集程序运行流程
4状态评价与预测
一般研究认为低负载的系统健康度高于高负载的系统,然而在实际系统运行过程中,一个系统正常态可能是适中的负载,也可能是高负载的。正是考虑到这样的情况存在,专门设计了一个基于系统历史状态聚类与回归的评价模型。
实际系统运行过程中,对于稳定运行的系统而言,可以认为多数情况下系统是正常的,因此利用聚类的方法,将训练集合或者采集到的历史数据划分成K类,取数量最多的前N类作为系统正常态的代表。选取每一个指标中心点,各指标偏离中心点一定范围,依靠线性扣分,超出范围,以指数扣分,分数扣完为止。依据指标得分健康数目,划分等级,每个指标得分不到其分配得分的β(β默认取0.6),则认为指标异常,结合利用M5Rules回归模型,计算各个指标相互间的回归关系,以偏离回归方程的4级指标前n个,且偏离比例超过0.3(计算方式为(|实际值-回归值|)/回归值)的指标作为异常指标。如果有n个指标,所有指标正常则为正常,如果超过0.1*n个指标出现异常为整个系统为注意状态,超过0.2*n个指标异常为异常状态,0.3*n个指标出现异常则为危险状态。
这种模型不仅可以避免对于本身就是高负载系统的状态评价误差,而且不仅是通过由低级指标直接线性组合成为高级指标判断系统状态,其对每一个底层指标聚类分析,指导判断每一个指标的健康度,充分考虑了影响信息系统状态的因素,从指标的健康度来度量系统整体的健康度,避免误报、漏报。
隐马尔可夫模型(hidden Markov model,HMM)是马尔可夫链的一种,它的状态不能直接观察到,但能通过观测向量序列观察到,每一个观测向量都是通过某些概率密度分布表现为各种状态,每一个观测向量是由一个具有相应概率密度分布的状态序列产生。所以,隐马尔可夫模型是一个双重随机过程即具有一定状态数的隐马尔可夫链和显示随机函数集。在充分研究各经典预测模型并结合电网信息系统状态特性的基础上,选择引入隐马尔科夫模型建立了信息系统状态短期预测模型。
这种模型以大量系统状态历史数据作为训练样本,对模型进行充分训练。对于当评价模型正常运行一段时间后,按照时间顺序记录系统四级指标的得分,便可以通过隐马尔科夫模型预测将来的一次或多次得分,最终预测三级、二级和一级指标状态。为了保证预测的实时性和有效性,周期性更新隐马尔科夫模型。
图5 评价预测整体模型流程图
5实验验证
将所述状态评价系统应用于四川省电力公司SG186安全监督与管理业务应用系统,它的应用服务器和数据库服务器分别是Weblogic和Oracle。为测试所述评价系统数据采集以及评价预测功能,设置如表3所示测试场景,可得到结果如表4、表5所示。
表3 测试场景
表4 数据采集功能测试结果示例
表5 评价预测功能测试结果示例
从表4数据分析可以看出,Oracle服务器采集程序能够采集此宿主机的硬件的动态信息。从场景1到场景3,cpu、内存、swap的使用率是递增的,这与测试用户数成倍增长相符,说明采集的数据是正确的,User Transaction Per Sec的最大值从场景1的1.8到场景2的1.96,再到场景3的2.1,依次递增,与场景的用户数递增相符,说明采集程序的Oracle数据库采集模块能够正常工作。同样,Weblogic服务器采集程序正常工作。从表5数据分析可以看出,评价系统充分评价信息系统当前状态,并能有效预测1 min后信息系统状态。在充分训练预测模型的条件下,预测时间可以更长。
6总结与展望
提出了一种电网信息系统状态评价方法。通过充分探讨建立了信息系统状态评价指标体系,并根据各级指标重要程度赋予其相应权重。实现对B/S构架信息系统整体状态状态的监控和评价,并以信息系统历史状态作为训练样本预测其短期状态,成果将作为重要部分应用于电网信息系统状态检修。
参考文献
[1]李向荣, 郝悍勇, 樊涛,等. 构筑数字化电网 建设信息化企业[J].电网技术, 2007(17):1-5.
[2]曾德君. SG186、ERP、IPSS三者关系论述[J]. 华东电力, 2009(9):1442-1444.
[3]刘贤杰,刘旭生. 信息通信状态检修系统中状态评价体系的探索与实践[J]. 电力信息化,2012(5):64-69.
[4]张涵. 开展信息系统状态检修提高系统运维水平[J]. 农村电气化,2014(6):32-34.
[5]Xiaojiao Yan, Fuan Wen, Chunmei Fan,et al. Performance Testing of Open Laboratory Management System Based on LoadRunner[C]. Proceedings of the IEEE International Workshop on Intelligent Motion Control, 2011.
[6]陈伟. 基于网络的服务器状态监控系统的研究与实现[D].保定:华北电力大学,2014.
[7]吴岩. 电力信息系统智能巡检系统的设计与实现[D].成都:电子科技大学,2012.
[8]周卫华,马如军,谭成翔.WebLogic Server安全技术概述及其在电子政务应用中的实现[J].计算机应用研究,2003,20(9):79-81.
中图分类号:TM764.1
文献标志码:A
文章编号:1003-6954(2015)04-0024-05
基金项目:国网四川省电力公司研究开发项目(52199713504A)
(收稿日期:2015-05-14)
Abstract:Focusing on condition-based maintenance of grid information system, the state evaluation and short-term prediction methods for grid information system are proposed. The state evaluation index system of information system is established through full discussion, and the corresponding weight is given according to the important degree of each index. The monitoring and evaluation for the overall state of information system with B/S architecture are realized, and its short-term state is predicted taking the history of information system as training samples. The results will be served as an important part of condition-based maintenance for grid information system.
Key words:information system; state evaluation; short-term prediction; condition-based maintenance