科技前沿 分布式海量数据处理平台设计与实现 许劭庆,马彪,安海英 (国网吉林省电力有限公司,吉林长春130021) 摘 要:为了提高电力行业网络各类监控设备告警信息和告警事件的处理速度,本文设计了由中心控制节点、计算节 点、配置服务节点等构成的海量数据处理平台。通过中心控制节点实现任务的分解与控制,计算节点实现任务计算。使用基 于文件格式的方式进行数据采集,利用Map/Reduce的模型进行数据汇总。采用本平台能够实现对海量告警信息的捕获和处 理,保证告警分析的效率。 关键词:海量告警;分布式;数据处理 中图分类号:TP3l】 文献标识码:A 0 引言 随着当今世界互联网的迅猛发展,电力行业也开始运用 现代信息技术对电网的运行状况进行监控,电力网络各类 监控设备每天都会产生大量的告警信息和告警事件,这些 信息的采集、清洗、分析以及汇总所包含数据的计算与处理 复杂度非常高,计算量非常大,所以会对计算机硬件性能有 很高的要求。分布式计算技术能够将一些本身适合分解成 大量更小计算片段的复杂问题进行分解,然后再将这些更 小的计算片段分配到多个计算资源上,利用多个计算资源 分别对这些小的计算片段进行分布式求解,这样不但有效 的利用了各个闲置的计算资源,也加快了计算执行的效率, 充分发挥了计算的高并行性。为此我们可以将分布式计算 技术引入到电力行业告警信息和告警事件的处理中,提高 信息的处理速度,为电力系统的运维监管提高效率。 本文是通过对当前已有的成熟的分布式计算系统如 google的map/reduce架构以及hadoopDB等系统的研究调查, 借鉴了map/reduce的基本思想,针对电力行业运维监控中的 各种海量告警数据处理的业务,提出的分布式海量数据处 理系统平台。 1 总体结构设计 海量分布式处理平台完成数据采集、任务分发、任务处 理以及任务汇总等多项内容。平台主要包括了中心控制节 点、计算节点、配置服务节点、拆分节点、日志节点、数据采 集传输部件以及电信网络单元这七大部分。各部分之间互 相通信,互相配合完成任务的拆分,发送及执行。其中Master 为中心控制节点,CU为计算节点,cs为配置服务节点, 为拆分节点,Ls为日志节点,MED为数据采集传输部件, NES为电信网络单元,能独立完成一定的传输功能。 2节点设计 2.1 中心控制节点 在整个系统中,中心控制节点是核心,负责系统中所有 资源的调度,并根据计算节点的状态分配系统中的任务,进 行相关的数据分析和计算,协调系统的整体运行。同时,为 了防止主控节点意外挂机导致的数据丢失的现象,采用双 机热备的机制来作为主控节点的备份。 Master中包含的主要子模块有通信、任务调度、任务管 理、定时器和Corba、锁管理等模块。 ①通信子模块:主要负责的是Master和其他子模块之间 的通信,负责分发和接收模块间的消息报文;②任务管理子 模块:主要负责对系统中处理任务的管理,包括最初的任务 创建、任务运行过程中的状态保持、大任务的分解、所有任 ・l75・ 文章编号:1673—1069(2016)35—175—2 务的维护以及任务执行等功能。③任务调度子模块:主要完 成任务调度的相关工作,包括依据任务的优先级对系统任 务进行调度安排,锁进程的管理与维护,维持进程间的通讯 等。④定时器模块:主要负责检查系统是否超时,以及处理超 时后触发的事件等问题,定时的检测系统的各种状态等。⑤ Master—Standby同步模块:主要负责同步Master上的任务到 Standby,以减少因为Master出故障后造成的损失。 2.2分布式计算节点 计算节点负责的是对海量数据进行具体的计算分析以 及对数据的具体任务处理,涉及到最初的数据采集、计算完 毕后的数据汇总、汇总结束后的数据备份以及最终结果的 查询等阶段。计算节点是整个系统中的基础,是任务执行的 基本单元,节点在运行的过程中,要分别与中心控制节点、 外部模块以及参数配置节点等部分进行消息通讯,在处理 这些信息的同事,还要通过任务调度实现对任务的并行处 理调度。一个完整的计算节点通常由任务管理模块、通讯模 块、数据操作模块以及定时器构成。计算节点中采用多线程 技术实现以上的各项功能。 CU的主要作用就是并行高性能化地执行各种小作业, 当有小作业需要被执行时,CU的具体执行流程为:①通过负 载均衡模块,计算节点CU主动向Master主控节点请求作 业,并获去作业的相关任务;②Master向主控进程中通信模 块的Master Agent发送分配的新作业,并为其分配新的任 务;③主控进程中通信模块的Progress Agent接收到在作业 管理调度模块根据申请过来的作业生成对应的XXTask,然 后将作业通过长连接的方式发送给工作进程Progress Agent; ④作业管理模块受到已接收到新作业的工作进程的调度, 生成工作进程相对应的XXTask;⑤新作业生成的Request被 工作进程的作业管理模块通过管道放入MiddleServer中间层 的请求队列中;⑥Request队列中所有的请求都是通过线程 池模块调用自己相应的处理函数aio_process request0来处理 的,为了保证不同的小作业可以多线程并行地处理,线程池 根据服务器的性能设置了线程的数量。⑦具体的作业通过 线程池调用DB数据处理模块来执行,比如数据创建,数据 查询等等。⑧最终的执行结果是在作业执行完毕后一层层 的向上层返回的,数据结果还是被线程池通过管道机制逐 层返回给Master 3数据采集处理 平台的数据采集功能是采集网元数据,然后,根据不同 的网元类型和网元号,对不同设备的性能数据以及告警数 据,进行数据过滤分析并存入到平台数据库中,为管理人员 企业实践 一种利用斯列普活化炉尾气加热烘干炉的方法 王 晖 (宁夏华辉活性炭股份有限公司,宁夏银川750001) 摘 要:随着社会节能环保意识的逐渐增强以及国家对未来能源发展战略的调整,使得活性炭生产过程中更多的注重 节能环保意识,进而从整体上达到降低成本的经济效益。为了降低额外的能源消耗,达到降低成本、节能降耗的目的,本文 将活化炉尾气中的可燃气体通过焚烧炉进行焚烧,再将燃烧产生的热量引入到回转式烘干炉用以烘干各种物料,不仅能够 达到节能环保的效果,还能够大大降低企业的成本,经济效益显著。 关键词:活性炭;斯列普活化炉;尾气;烘干炉 中图分类号:TQ424 0 引言 文献标识码:A 文章编号:1673—1069(2016)35—176—2 放量符合国家的环保标准是当前重点研究的问题之一。 1 斯列普活化炉尾气工作原理 活性炭是一种用途较为广泛的多孔吸附材料,其孑L隙结 构十分发达,且比表面积较大,广泛利用催化剂、吸附剂等 斯列普活化炉是从苏联引进的一种活化设备,经过我国 载体在农业、工业以及医疗等行业中使用。我国大多采用斯 研究人员的不断改进和完善,具有非常成熟的工艺技术。活 列普活化炉生产活性炭,制造颗粒活性炭。在生产工艺流程 化炉由左右半炉和对应的左右蓄热室组成,每个半炉和对 上活化炉经过改进,控制性良好,且生产效率显著提高,生 应的蓄热室之间相互连通,左右半炉之间连接着燃烧室。蓄 产产品的质量更加的高。尾气的再回收和利用是斯普列活 热室底部主要是普异砖堆砌成的结构。如果左半炉为冷却 化炉节能降耗的主要措施。活化炉尾气的主要成份是活化 炉,右半炉为加热炉,蒸汽从左蓄热室底部通过,在蓄热室 反应过剩的水蒸汽和二氧化碳、一氧化碳以及氮气等,这些 内上升,实现热交换,此时水蒸气的温度从130oC升高到 尾气中只有30%左右可以利用活化炉本身的结构重新返回 1000℃。此时水蒸气成为过热水蒸气,由左蓄热室进入到左 活化炉内循环参与活化反应,其余大部分直接排人大气而 半炉内,再经过上中下的远烟道进行曲折运动。水蒸气经过 白白浪费能源。因此如何将活化炉内的尾气进行有效的回 活化段与炭化料直接接触,产生化学反应后生成水煤气。由 收和利用,在减低企业燃煤量的同时也能够保障废气的排 于此反应为吸热反应,因此炉内的温度大大下降。左半炉中 实现数据的结构化管理提供基础,方便管理人员数据操作、 分析以及领导的决策。本文数据采集采用的是一种基于文 可以根据Map/Reduce的机制来将汇总任务分解成多个 Map和Reduce小任务,以解决汇总任务包含表格查询跨库 件格式的采集方式。采集任务的方案是计算节点主动从b-TP 跨表格的问题,图6中给出了发给计算节点,让计算节点进 服务器上取数据,然后将数据采集入库。数据采集流程步骤 行归并被拆分成四个小任务的Taskl。 为:第1步:外部系统Med中间层接收到RNC因产生原始数 数据汇总的具体过程为:①计算节点cu接收到Map小 据,形成数据文件而发来已经准备好的通知,然后将请求 任务,先生成临时表,然后执行。②当Master确定所有Map任 转发到本系统Master控制节点。第2步:任务拆分服务器Ts 务完成以后,再发送reduce任务,CU此时执行Reduce操作, 收到Master因采集请求生成的大任务,在将其拆分多个小 汇总中间临时表中的数据,生成用户需要的最终结果集。 任务之后返还给Master,Master将小任务放入任务队列中。 5结论 第3步:Master接收到计算节点CU主动申请的采集任务, 本文设计了由中心控制节点、计算节点、配置服务节点 Med将执行该任务的CU信息进行记录。第4步:CU从指定 等构成的海量数据处理平台。通过中心控制节点实现任务 的FTP服务器上下载RNC上传的数据,为了能够使数据以 的分解与控制,计算节点实现任务计算。使用基于文件格式 结构化的形式入库,调用解析库对数据进行解析。第5步: 的方式对网元进行数据采集,利用Map/Reduce的模型进行 CU在采集任务完成后,向控制节点发送任务执行完成报 数据汇总,实现数据的整合。采用本平台能够实现对海量告 告,在收到任务消息报告之后,Master将从队列中移除任务。 警信息的捕获和处理,保证告警分析的效率,为电力系统的 4数据汇总处理 运维监管提供数据支撑。 系统的数据汇总是在对网元采集的数据计算处理后,进 行一系列的有条件和逻辑顺序的数据加工和整合。本文采 参考文献 的数据汇总采用的是Map/Reduce的模型,在执行的过程中, [1】丁兆云,贾焰,周斌.微博数据挖掘研究综述『J1.计算机 采用临时表存储Map任务计算的临时结果,然后再通过 研究与发展,2014,51f4):691—706. Reduce任务,根据临时表中的数据计算汇总。通常情况下, 【2】黄斌,许舒人,蒲卫.基于MapReduce的数据挖掘平台设 策略数据汇总是具有一定策略的,最常用的汇总策略有时 计与实现[J].计算机工程与设计,2013,34(2):495—501. 间维度和对象维度两种,可以按照时间(天)或者采集对象 【3】 朱姣姣,叶猛.多模式匹配及其改进算法在协议识别中 (网元)来进行汇总。 的应用[J].电视技术,2012,36(7):60—6. Reduce的机制来将汇总任务分解成多个Map和Reduce 【4】 陈占芳,王欢,毕琳,冯欣,禹建文.基于OA系统的即时 小任务,以解决汇总任务包含表格查询跨库跨表格的问题, 通讯平台关键技术研究与实现[J].长春理工大学学报: 让计算节点进行归并被拆分成四个小任务的Task1。 自然科学版,2012,5f04):125—129. ・176・