APP下载

集群排队的铁道供电海量准实时数据异步并行查询

2018-06-30屈志坚范明明

铁道学报 2018年6期
关键词:铁道海量集群

屈志坚,赵 亮,2,范明明

(1.华东交通大学 电气与自动化工程学院,江西 南昌 330013;2.常州市轨道交通发展有限公司,江苏 常州 213000)

近年来,四电综合集成技术在我国干线电气化铁道,特别是高速铁道网中的应用,使铁道供电运营管理部门将铁道供电系统所有的重要高、低压回路几乎全景纳入监控范围[1],包括线路接触网开关、牵引变配电设备、铁道10 kV电力设备、铁道通信信号电源等,综合监控采集的信号容量成指数倍激增,铁道供电测控终端的最高采样率更是高达2 M以上的级别,系统容量及终端采样率的大幅提高[2],使监控数据体量呈几何级数增长,计算机性能的增长速度远跟不上数据体量的膨胀,百万甚至千万级的海量监测数据查询慢,容易导致卡屏,甚至可能造成关键故障信息丢失,威胁铁道运输安全[3-4]。因此,迫切需要研究针对海量化的铁道供电信息的大数据快速查询响应技术[5]。

可以按所规定要求的时序采样,将亚秒级到达处理环节、满足量测精度的海量铁道供电监测数据称为准实时数据,海量的准实时数据通过单线图界面形式发布,不仅使存储海量信息的服务器端调用负载大,而且容易使界面端的处理延时大幅增加[6-7]。为突破常规铁道监控界面端快速响应海量准实时数据的局限性问题,学术界展开了针对海量数据快速查询方面的研究,主要可以分为两类,第一类为在界面端主机内存中设置Ajax数据缓存,提高读取响应速度的方法,其关键是将关系数据库中的铁道监测数据缓存到界面端的内存数据引擎中,使20个并发界面中的设备图元更新延时降至50 ms内[8]。然而,关系数据库容量受限于TB级,不能支撑更大体量的监测数据。第二类是将铁道监测数据并行存储到专门的HBase大数据集群服务器中,与常规关系数据库相比,具有更好的扩展性和存储能力,但HBase按非主行键查询的效率低下,这是由于HBase对非主行键采用逐行扫描的方式,每次运行时都需启动MapReduce依次批处理逐行检索[9],这种进程反复重启和逐行处理查询的方式易造成服务器端的高延迟。针对大数据处理问题,Apache基金会组织发布了新数据引擎Impala组件,通过守护进程避免了MapReduce的启动开销[10-11],若将Ajax数据缓存引擎融入到Impala的守护进程中,就可能避免重启时间消耗,Impala对存储于HDFS的数据采用顺序读取方式访问,相较于HBase的随机访问更为高效。将Ajax界面端数据引擎融入Impala守护进程和HDFS顺序读取访问接口的研究,尚鲜见文献报道。

本文在铁道供电系统大数据多机集群配置和分布式数据采集与存储的基础上,结合Ajax数据引擎,推导了铁道供电监测数据的集群排队模型[12-14],提出监测数据集群排队的大数据快速查询处理方法,并以工程系统数据为算例进行了验证。

1 铁道供电系统数据集群处理

铁道分布式智能供电系统的构建是我国中长期铁道规划顺利实施的重要保障,铁道沿线的车站、信号设备、通信与照明等设施接入了电压、电流、温度和覆冰等大量传感器,采样频率也因此越来越高,从而产生了海量数据信息,如图1所示。在电气化铁道建设中,四电集成化的全景数据采集包括牵引供电系统、铁道10 kV电力系统、高铁接触网隔离开关和通信信号电源系统[15-16]。

图1 高速铁道供电系统数据集群监控处理模式

铁道供电海量数据监控主要由调度监控层、数据服务层和现场设备层组成,其中调度监控层是指利用网络直传方式访问监控界面应用服务器的人机接口层,通过将数据缓存至调度界面端的异步数据队列中进行读写访问,可避免调度主机监控画面系统繁琐的配置和界面图元反复调用数据服务层。现场设备层所采集的海量铁道供电数据经前置机处理后,由对象映射表按照时间序列加载至数据服务层用于管理数据的HDFS/HBase中,其中,HDFS在物理上是分块存储(block),以此给客户端提供一个统一的抽象目录树,HBase则是天然分布式的数据库,使用HDFS作为自己的文件系统。

监控服务器利用Ajax数据引擎通过中间服务层,不断以异步的形式访问铁道供电多机集群,消息不断地由集群中各节点的守护进程接收,形成铁道供电海量信息的集群队列模型。

2 铁道供电信息集群排队查询模型

2.1 集群模式下的监控应用新框架

铁道供电监控以信息流传输处理为主线,包括服务端大数据调用处理和调度界面端大数据刷新处理。对于调度界面端,Google推出了一种Ajax的GWT应用框架,将面向对象工程学和丰富的ui组件库融入Java应用,在不重载界面的情况下,遵循“按需取数”原则,可实现与监控应用服务端的大数据连接。融合基于GWT组件和专门的Impala大数据组件[17],设计的新型分布式集群监控应用框架如图2所示。

图2 铁道供电监控的大数据集群查询应用框架

以查询站所母线电压为例,监控界面以线程轮询的方式,通过GWT异步调用接口发出遥测数据查询请求,如查询001号站所母线电压,监控应用服务器调用Servlet容器通过网络将查询站所母线电压命令发送到铁道供电Impala监控大数据集群,工作节点经集群排队接收信息成为协调节点,从主控节点处获取数据存储信息后,产生执行计划树分配各工作节点进行查询,汇总于协调节点后,返回至Servlet容器,为确保监控界面端通信数据量更小,Ajax数据引擎设置响应站所母线电压的数据缓存,若001号站所母线电压由218 kV变为230 kV时,则执行回调函数将更新的遥测数据信息返回并刷新界面;若003号站所母线无变化,则无需返回数据。

2.2 监控数据的集群队列模型

图3 两台服务器的消息队列状态转移

( 1 )

铁道供电系统服务器空闲率为

( 2 )

平均队长

( 3 )

( 4 )

可得平均等待时间和逗留时间为

( 5 )

( 6 )

以集群规模为n(n>2)作为服务器集群的新一代铁道大数据监控系统研制,应用程序可通过轮询的方式调取大数据集群的数据服务接口,从接口返回的信息队列中获取准实时数据,系统容量与供电调度信息来源无限制,当调度信息到达集群时,若集群存在闲置的未成为协调节点的工作节点,则集群工作节点立即接收服务并成为协调节点,其消息队列状态转移如图4所示。

图4 集群队列状态转移

( 7 )

铁道供电监控系统集群空闲率为

( 8 )

平均队长

( 9 )

(10)

可得平均等待时间和逗留时间为

(11)

(12)

因此,可以得出集群的规模越大,其信息流等待时间越短,信息流队列越短,对于集群的信息流等待时间的平均期望越小,集群处理能力越高,延迟期望越小,则查询越快,性能越好。

3 集群队列界面端异步回调实现流程

通过面向对象方式在界面和服务器两端分别封装Ajax异步请求、远程调用服务和回调服务,通过异步回调实现铁道供电海量监控信息的异步交互处理。查询监控界面端程序在编译时会被GWT编译器通过交叉编译转换成脚本应用程序,经网络传回调度站所的查询界面,具体查询流程如图5所示。

Impala集群查询各分布式工作节点之间顺序循环,根据遥测主控节点中Hive元数据库与HDFS提供遥测数据信息,如站所、采集时间、模拟量信息等。大数据子查询准确地访问每个遥测工作节点,将每个遥测工作节点查询到的遥测数据通过异步回调接口,并快速载入刷新界面。

图5 监控界面的服务器端集群查询流程

4 集群环境下的算例测试

4.1 算例测试集群环境的搭建

以石德线一套双回10 kV配电网远动调度自动化监控系统的工程数据为算例,其供电示意图如图6所示,包括石家庄至晋州、晋州至衡水和衡水至德州供电区段3个配电网供电臂。

图6 铁道10kV配电网供电算例的示意

首先建立由主控节点和3个工作节点构成的分布式调度监控四机集群,并以异步查询服务器作为测试机,利用GWT框架设计的富网络供电调度监控界面对工程导出的监控大数据进行测试,各集群节点配置见表1。

表1 分布式调度监控的集群实验环境

以监控系统下属站所中时间、站所ID、地址、模拟量作为遥测数据表单快速查询处理,并载入测试调度站浏览器,在Impala集群查询遥测数据一定的条件下,以Ajax平台的GWT框架作为铁道供电监控界面端,考察在查询实例中集群工作节点数、内存大小等对查询速度的影响。研究不同规模、性能及查询密度的集群将遥测数据表加载至调度站所服务器界面的影响。

4.2 集群CPU使用率对查询性能的影响

以查询3.0×107条遥测数据为例,查询服务测试机以Firefox作为界面监控界面测试容器,设置4台集群分别每10 s查询一次、20 s查询一次,关闭2台工作节点以每10 s查询一次进行实验,与传统两台服务器进行比较实验,每次实验以间隔1 min周期采样方式,连续采样20 min。观测4种不同集群工作状态,即{(四机集群,10 s);(四机集群,20 s);(二机集群,10 s);(二机集群,20 s)}的集群条件,统计Impala集群查询结束时的平均处理延时,结果如图7所示,4次查询实例20 min的平均延时均可控制在280~310 ms,满足准实时处理1 s内的应用查询需求。

图7 平均查询时间(20 min)

由图7可知,集群规模相同的情况下,查询密度对监控集群的查询时间影响不大,但集群规模对查询时间有一定影响,在10 s和20 s的查询间隔条件下,四机集群比两台服务器查询的时间分别减少了27.2 ms、17.4 ms。

4.3 集群CPU影响测试

在4.2节中提取三组进行实验,即{Ⅰ(四机集群,10 s);Ⅱ(四机集群,20 s);Ⅲ(二机集群,10 s)},在此基础上,将主控节点内存由24 GB减至为16 GB,同样进行三组实验,连续采样20 min,每分钟记录一次CPU的使用率,六组实验结果如图8所示。

由图8可知,在集群主控节点内存分别为24 GB和16 GB的情况下,集群CPU在20 min的平均使用率分别为{10.74%、9.75%、20.81%}和{10.34%、10.02%、19.14%},由此可以得出,集群CPU使用率受主控节点内存的影响相对较小,但受集群规模影响较大。

(a)集群主节点内存为24 GB对CPU使用率影响

(b)集群主节点内存为16 GB对CPU使用率影响图8 集群对CPU使用率影响

以本次实验四机集群系统为例,对铁道监控准实时大数据信息的轮询模型进行分析。4台准实时大数据服务器,查询测试机以1 s的时间间隔以数据服务接口的形式轮询一次集群(即λ=1次/s),集群以每秒1次的速率处理调用接口并返回查询到的信息,考察查询机所需平均等待时间。

根据式( 7 )~式(12)可得

关闭两台工作节点,计算得到常规两台服务器并列运行时的系统参数。同理可得

可见,相较于常规的两台数据服务器模式中平均队长为1,四机集群情况下的平均队长只有0.019,集群模式下能够更快速的处理信息,并且集群模式下,无论是平均等待时间及逗留时间等指标同样具有明显的优势。

4.4 集群稳定查询密度的标准差测试

标准差是表征集群队列查询稳定性的重要指标,标准差越小表示集群查询越平稳、波动越小,意味着影响越小。为了进一步获得CPU查询密度对集群系统处理的影响,获取3次集群实验20 min内每分钟的标准差,如图9所示。

(a)(24 GB,2台,10 s)20 min误差分布

(b)(24 GB,4台,10 s)20 min误差分布

(c)(24 GB,4台,20 s)20 min误差分布图9 20 min内标准差比较

由图9得到的(a)、(b)两组实验数据可得,在20 min内每间隔10 s查询一次条件下,与两台服务器并列运行情况比较,四机集群的标准差波动更小,新的集群监控方法优于传统的两台服务器的架构方法。

同时,由图9得到的(b)、(c)两组实验数据可得,在四机集群的情况下,分别在20 min内以10 s和20 s为查询间隔,得到的标准差波动并无明显的差别。

5 结论

(1)综合运用组件容器嵌入Ajax数据引擎,通过网络与Impala集群组件进行大数据的快速交互技巧,验证了监控界面端与铁道供电大数据快速交互的可行性。结果表明该方法能满足铁道监控系统界面端大数据的准实时处理需求。

(2)以10 kV配电网调度监控工程系统为算例,进行多组不同规模、性能及查询密度的查询测试,结果表明,与传统服务器相比,以集群作为服务器查询效率更高,随着集群的规模扩大稳定性越高,可高效地实现铁道供电调度端对准实时监控大数据的快速查询处理。

参考文献:

[1]刘明光.铁道电网过电压分析及防护[M].北京:清华大学出版社,北京交通大学出版社,2009:77-82.

[2]刘明光,白生龙,杨焕廷,等.高压电气设备绝缘在线监测研究[J].电气化铁道,2001(4):11-14.

LIU Mingguang,BAI Shenglong,YANG Huanting,et al.Study on High Voltage Equipment Insulation On-Line Monitoring[J].Electric Railway,2001(4):11-14.

[3]赵林,王丽丽,刘艳,等.电网实时监控可视化技术研究与分析[J].电网技术,2014,38(2):538-543.

ZHAO Lin,WANG Lili,LIU Yan,et al.Research and Analysis on Visualization Technology for Power Grid Real-Time Monitoring[J].Power System Technology,2014,38(2):538-543.

[4]周孝信,鲁宗相,刘应梅,等.中国未来电网的发展模式和关键技术[J].中国电机工程学报,2014,34(29):4999-5008.

ZHOU Xiaoxin,LU Zongxiang,LIU Yingmei,et al.Development Models and Key Technologies of Future Grid in China[J].Proceedings of the CSEE,2014,34(29):4999-5008.

[5]辛耀中,石俊杰,周京阳,等.智能电网调度控制系统现状与技术展望[J].电力系统自动化,2015,39(1):2-8.

XIN Yaozhong,SHI Junjie,ZHOU Jingyang,et al.Technology Development Trends of Smart Grid Dispatching and Control Systems[J].Automation of Electric Power Systems,2015,39(1):2-8.

[6]辛耀中.智能电网调度控制技术国际标准体系研究[J].电网技术,2014,38(2):538-543.

XIN Yaozhong.Research on International Standard Architecture for Smart Grid Dispatching and Control Technology[J].Power System Technology,2014,38(2):538-543.

[7]顾雪平,刘道兵,孙海新,等.面向SCADA系统的电网故障诊断信息的获取[J].电网技术,2012,36(6):64-70.

GU Xueping,LIU Daobing,SUN Haixin,et al.Acquisition of Power System Fault Diagnosis Information from SCADA System[J].Power System Technology,2012,36(6):64-70.

[8]屈志坚,应康兴,赵亮,等.富网络调度界面的多事件线程快速GAS回调模式[J].电网技术,2016,40(9):2881-2888.

QU Zhijian,YING Kangxing,ZHAO Liang,et al.Multi Event Thread Fast GAS Callback Mode of Rich Network Scheduling Interface[J].Power Grid Technology,2016,40(9):2881-2888.

[9]屈志坚,徐振清,林宏平,等.设计模式在调度主站监控系统兼容性处理中的应用[J].电力自动化设备,2016,36(7):156-162.

QU Zhijian,XU Zhenqing,LIN Hongping,et al.Application of Design Pattern in Compatibility Management of Dispatching Master Station Monitoring System[J].Electric Power Automation Equipment,2016,36(7):156-162.

[10]郭挺,谢敏,刘明波,等.SVG和Ajax技术在电网分析与辅助决策支持系统中的应用[J].电力系统保护与控制,2012,40(4):83-89.

GUO Ting,XIE Min,LIU Mingbo,et al.Application of SVG and Ajax Technique into Power Network Analysis and Decision Support Systems[J].Power System Protection and Control,2012,40(4):83-89.

[11]敖丽敏,李林辉.基于Ajax的电力图形系统的实现[J].电力系统自动化,2007,31(9):47-50,81.

AO Limin,LI Linhui.Implementation of a Power Graphics System Based on Ajax[J].Automation of Electric Power Systems,2007,31(9):47-50,81.

[12]赵耀培.一种基于GWT的Web应用开发框架原理与实现[J].信息技术与信息化,2012(3):76-83.

ZHAO Yaopei.The Principle and Implementation of Web Application Development Framework Based on GWT[J].Information Technology and Informatization,2012(3):76-83.

[13]LI K,SU F,CHENG X,et al.The Research of Performance Optimization Methods Based on Lmpala Cluster[C]//2016 16th International Symposium on Communications and Information Technologies(ISCIT),2016:336-341.

[14]陈达伦,陈荣国,谢炯.基于MPP架构的并行空间数据库原型系统的设计与实现[J].地球信息科学学报,2016,18(2):151-159.

CHEN Dalun,CHEN Rongguo,XIE Jiong.Research of the Parallel Spatial Database Proto System Based on MPP Architecture[J].Journal of Geo-information Science,2016,18(2):151-159.

[15]赵加奎,杨国凤,沐连顺,等.数据流技术在电网自动化中的应用研究[J].电网技术,2011,35(8):6-11.

ZHAO Jiakui,YANG Guofeng,MU Lianshun,et al.Research on the Application of the Data Stream Technology in Grid Automation[J].Power System Technology,2011,35(8):6-11.

[16]SANG J P,JIN D K,SEO Y S,et al.Computed Tomography Findings for Predicting Severe Acute Hepatitis with Prolonged Cholestasis[J].World Journal of Gastroenterology,2013,19(16):2543-2549.

[17]赵鑫,张向军,刘天寿,等.基于Ajax技术的小水电站运行效率监测系统设计与实现[J].电力系统保护与控制,2009,37(2):83-87.

ZHAO Xin,ZHANG Xiangjun,LIU Tianshou,et al.Design and Implementation of Small Hydropower Station Efficiency Supervisory System Based on Ajax[J].Power System Protection and Control,2009,37(2):83-87.

猜你喜欢

铁道海量集群
一种傅里叶域海量数据高速谱聚类方法
铁道小卫士
海上小型无人机集群的反制装备需求与应对之策研究
海量快递垃圾正在“围城”——“绿色快递”势在必行
荷兰咖啡吧里奇妙的“空中铁道”
《铁道通信信号》订阅单
一种无人机集群发射回收装置的控制系统设计
Python与Spark集群在收费数据分析中的应用
勤快又呆萌的集群机器人
一个图形所蕴含的“海量”巧题