李大鹏,李立新,杨清波,刘金波,张 杰,刘 东
(1.电力调度自动化技术研究与系统评价北京市重点实验室(中国电力科学研究院有限公司),北京 100192;2.国家电网有限公司国家电力调度控制中心,北京 100031;3.国网天津市电力公司,天津 300010)
近年来,以高可靠、易扩展、资源共享等为特点的云计算技术,在越来越多的领域得以应用。为此,国家电网公司电力调控中心规划建设了物理分布、逻辑统一的调控云平台,构建了跨调度机构的“1个国(分)主导节点+N个省(地)协同节点”的两级部署调控云体系[1-3],目标是实现调控云平台资源灵活调配、服务高效集成、应用便捷开发、数据智能利用,推动调度自动化系统由“分析型”向“智能型”转变。
然而,在调控云建设过程中,接入的数据种类和数据量呈爆发式增长,为云中心数据处理带来了巨大的压力。针对云中心面临的困境,边缘计算作为一种新型计算范式被提出[4-5],并逐渐成为适应物互联应用需求的新兴计算模式。云边协同计算模型中的边缘设备具有计算和分析的能力,通过在网络的边缘执行计算,在实现整体计算能力扩展的同时,又能够有效地降低网络带宽和云中心计算、存储资源的占用。因此,越来越多的科研工作者开始研究云边协同技术在电网领域的应用[6-8]。文献[9]利用云边协同数据处理结构的电力物联网架构,建立了一种新的集中—分布联合控制式电力信息物理系统CPPS(cyber power physical system)模型,提高了控制结构的优越性。文献[10]通过云边交互协议、规则引擎等模块的设计,在边缘侧实现了统一智慧物联体系“多元感知、多态接入、统一模型、统一物联”的目标。文献[11]针对传统的传感信息获取处理方式存在数据良莠不齐、数据缺失、格式不统一的问题,通过引入云边协同技术,就地实现数据的处理与判决,提高了获取数据的质量。但云边协同技术在调控领域的研究尚未完全成熟。
本文基于调控云平台,在深入分析调控数据管理及质量优化应用需求的基础上,研究了云边协同关键技术,设计了应用于电网调控领域的调控云广域云边协同总体架构,实现了云边协同的数据管理和质量优化。实际应用结果表明,云边协同技术的应用解决了网络带宽占用过大、数据时效性不强的问题,缓解了调控云中心的计算、存储压力,同时调控云协同节点的数据质量也得以有效提升。
随着国网调控云建设的深入推进,调控云平台上已积累了大量的模型数据、运行数据、管理数据、外部数据等,数据类型多样化加剧,数据量呈指数级增长,数据处理时效性要求增强。以某省级协同节点为例,每天全电压等级的量测数据量约6亿条,约32 GB,1年所需的存储空间约12 TB。按照传统云中心集中存储模式,目前13个省级协同节点一年所需的云中心存储空间约为150 TB。后期协同节点数量扩充至全网27个省调,则一年所需的云中心存储空间约320 TB。另外,对于主配网模型信息融合已有相关研究[12],部分省级协同节点也在试点主配网一体化融合应用,对于主配网数据质量提升[13]提出了更高的要求。
面对如此海量的数据,在资源有限的情况下,所有的终端数据都传输到云中心会使得网络带宽负载急剧增加,复杂的网络环境和较长的传输路径也会造成很长的处理时延,数据消息堆积情况严重,从长远角度考虑,云中心数据存储压力和数据服务压力过大。这就导致了无法实时地为云中心传输数据,难以支撑云中心快速决策。
在电网调控领域,云计算适用于非实时、长周期数据、全局业务决策场景,而边缘计算在实时性、短周期数据、本地业务决策等场景有不可替代的作用。其技术应用的对比分析如表1所示。
表1 云计算与边缘计算适用场景对比Tab.1 Comparison of applicable scenarios between cloud computing and edge computing
边缘计算模式作为云计算的拓展和延伸,是云中心所需高价值数据的采集和初步处理单元,可以更好地支撑云端应用[14-16];反之,云计算通过大数据分析优化输出的业务规则或模型可以下发到边缘侧,边缘计算基于新的业务规则或模型运行。如何将两者更好地结合起来,搭建一个高效率、智能化的云边协同计算平台,解决广域管理和协同等问题,提升广域范围内数据、服务、资源状态的协调感知和协同共享能力,已经成为该研究领域主要关注的热点。
基于调控云广域分布式部署的特点,借鉴广域面向服务(wide area SOA)技术[17],深入研究全网调控云及新一代调控系统广域资源及信息协同交互需求,建立调控云广域协同平台支撑技术体系,突破传统自动化系统局域控制技术,实现资源全方位安全共享、集中管控和弹性解耦,满足电网运行的整体性对系统的一体化协调控制的需求[18-19]。
结合调控业务生产组织模式,调控云遵循与“统一调度、分级管理”原则相适应的分级部署模式,构建跨调度机构的两级部署体系,通过广域综合数据网进行连接,在模型数据和业务层面存在大量的消息、服务和任务交互,因此需要借鉴互联网技术,结合调控网络特点,构建底层支撑技术,打通两级之间的消息和服务通道。
调控云通过服务总线及广域服务代理机制进行主导节点和协同节点间的各类服务协同交互。内部服务的请求、响应在本节点内部完成;广域服务请求统一由广域服务代理集群进行转发,如图1所示,具体流程包括:主导节点广域服务客户端先向本地出口代理发送服务请求,出口服务代理接收到请求后向协同节点入口服务代理发起请求,协同节点入口服务代理接收到请求后通过服务总线调用相应的广域服务并将服务结果返回给入口服务代理,入口服务代理再将服务结果返回主导节点的出口服务代理,出口服务代理最后将服务结果返回给主导节点广域服务客户端。
图1 广域服务交互架构Fig.1 Interaction architecture of wide area service
调控云通过消息总线进行消息的即时通信。广域消息传输通过广域消息代理来实现,消息代理以主备模式部署在调控云各节点边界的通信代理服务器上,负责广域范围的消息转发,完成消息跨节点的实时推送。如图2所示,本文以主导节点某应用向协同节点某应用发送消息为例,说明消息传输流程:协同节点应用向消息管理中心订阅消息主题;主导节点应用将广域消息发送给本端广域消息代理;广域消息代理根据各协同节点与消息主题的订阅关系,将其加入到对应节点的发送队列中,发送给对端广域消息代理;协同节点消息代理收到消息后,将消息发送给本节点内的应用,从而完成消息跨广域网的即时传输。
图2 广域消息交互架构Fig.2 Interaction architecture of wide area message
基于广域云边协同架构,调控云的数据质量优化功能被拆分为多个子任务,可借助服务编排工具对子任务进行组合并实现协同调度。广域任务调度采用微服务化、广域服务编排、标准模型构建等技术,实现两级任务之间的便捷协作,进而快速、灵活组装成数据质量优化的业务场景,降低应用实现复杂度,提升服务的复用度。广域任务调度由服务注册中心、服务编排页面、服务编排文件、流程文件编译、流程执行引擎等功能组成,如图3所示。主导节点和协同节点间的任务调度、注册中心数据同步通过广域消息总线和广域服务总线进行交互。
图3 广域任务调度架构Fig.3 Architecture of wide area task scheduling
调控云是面向电网调度业务的云服务平台,基于虚拟化、分布式及服务化等云技术理念,形成资源虚拟化、数据标准化、应用服务化的调控技术支撑体系,其架构如图4所示。
图4 调控云体系架构Fig.4 Architecture of dispatching and control cloud
国分云作为主导节点,负责管理、控制各协同节点的运行,并实现与各协同节点的互联和信息交换;省地云作为协同节点,配合主导节点进行数据归集和汇聚。
调控云按主导节点、协同节点、源数据端三层架构设计。基于调控云的总体架构和边缘计算的理念,本文设计了基于调控云的广域云边协同架构,如图5所示,该架构包含调控云主导节点(云)、协同节点(边)和源数据端(端)三层,其中调控云主导节点(云)和协同节点(边)通过广域数据网相连,源数据端(端)和电网采集设备通过本地局域网相连。该架构充分利用了调控云协同节点(边)的计算资源和存储资源,缓解了调控云中心的计算压力、存储压力和广域数据网的带宽压力,实现了广域云边协同计算。
图5 基于调控云的广域云边协同架构Fig.5 Wide area cloud-edge collaborative architecture based on dispatching and control cloud
基于广域云边协同架构,以电网采集数据的清洗、上送任务分解及协同为例进行分析,综合考虑任务分解策略、单任务数据量、计算时间、网络带宽占用等性能指标,云中心将任务拆分为n个子任务,子任务间不存在耦合关系,任务定义为X={xi},任务在边缘处理时间定义为Te={tei},任务在云中心处理时间定义为Tc={tci},单任务处理前数据量D0={D0i},处 理 后 数 据 量D1={D1i},其 中i={1 ,2,…,n}。
以协同处理的任务处理时间最优、占用网络资源最小定义目标函数,具体如下。
(1)首先初始化任务分解策略。
α=[α1,α2,…,αn],αj=(0 ,1),表示任务在边缘执行;β=[β1,β2,…,βn],βj=(0 ,1),表示任务在云中心执行;其中α⊕β=1,代表任务xi要么在边缘节点执行,要么在云中心执行,且任务必须执行。
(2)根据任务分解策略定义优化函数。
(3)综上优化目标。
式中,φ1+φ2+φ3=1,代表处理时间和占用网络资源的权重分配。
基于上述优化目标,采用基于启发式规则的模拟退火算法,通过迭代优化的方式,得到任务分配的近似全局最优解,其算法实现流程如图6所示。
图6 基于模拟退火算法的任务分配策略优化Fig.6 Optimization of task allocation strategy based on the Simulated Annealing algorithm
该架构应用到广域数据质量迭代优化问题中,通过协同节点的计算资源进行部分采集数据的清洗、筛选和上送,调控云中心采用广域任务调度技术,协调所有协同节点的计算任务和数据处理规则,实现任务、规则向协同节点的下发和反馈。
调控云主导节点负责广域云边协同数据管理,其底层基于调控云基础平台提供的各种支撑,通过广域数据网与协同节点进行任务、规则、数据的广域交互,进一步支撑调控云上层的业务应用,如图7所示。
图7 调控云广域云边协同数据管理Fig.7 Wide area cloud-edge collaborative data management in the dispatching and control cloud
调控云协同节点负责边缘协同计算管理,其底层基于边缘基础设施提供的硬件环境,通过局域网汇集其管辖范围内的所有电网采集设备采集的数据,通过广域数据网与主导节点进行任务、规则、数据的广域交互。
广域云边协同数据管理具备全局任务调度、全局规则管理和数据质量管理3项功能。
(1)全局任务调度模块负责广域云边协同任务的统一管理。面向具体的数据采集、清洗、校验、评估等需求,将任务进行分解,并将数据采集、清洗等需要各边缘节点具体执行的任务下发给对应的协同节点,并对协同节点的任务执行情况进行监控,确保任务能够在协同节点有效执行。同时,主导节点作为调控云任务的全局协调中心,根据各协同节点的数据采集范围、资源使用情况及任务执行情况等,进行全局统一协调,充分发挥协同节点计算能力的同时,保证数据采集质量和效率。
(2)全局规则管理模块负责对各协同节点的数据采集范围、数据处理规则进行统一管理。该模块是数据质量迭代优化的核心。初始状态时,根据调控云数据采集需求,由系统管理员通过手工配置各协同节点的数据采集范围(如按管辖范围、电压等级、数据类别等)和初始的数据处理规则(如补全缺失点、平滑突变点、处理非法值等),并将该规则下发到各协同节点,同时对各协同节点规则的执行情况进行监控。在系统正常运行后,根据数据质量管理模块汇集的各协同节点的数据评估情况,对数据处理的规则和算法进行在线优化,并将优化后的规则、算法下发到各协同节点,如此反复进行优化迭代,提升协同节点上送的数据质量。
(3)数据质量管理模块负责对各协同节点上送的数据进行统一管理。该模块接收各协同节点上送的数据,通过多源异构数据融合技术实现数据的汇总整合。之后通过多源数据质量智能综合评估功能,对整合后的数据质量进行分析评估,确定每个协同节点上送的数据质量。最后将数据质量校验、评估结果提供给全局规则管理模块。
边缘协同计算管理具备任务管理、规则管理和数据管理3项功能,具体流程如图8所示。
图8 边缘协同计算流程Fig.8 Flow chart of edge collaborative computing
(1)任务管理模块负责接收调控云主导节点下发的任务,在本地执行任务,并将任务执行情况等信息反馈给调控云主导节点,具备任务接收、任务执行和任务反馈功能。
(2)规则管理模块负责接收调控云主导节点下发的规则、算法,将其装载到本地数据计算处理模块内,并将规则执行情况等信息反馈给调控云主导节点,具备规则接收、规则应用和规则反馈功能。
(3)数据管理模块负责协同节点管辖范围内的数据采集,基于调控云主导节点下发的数据处理规则,进行批量处理或流式处理,将处理后的数据按约定的数据格式上送到调控云主导节点,具备数据采集、数据计算和数据上送功能。
调控云广域云边协同的数据流包含两部分:从调控云协同节点到主导节点的电网数据,即业务数据流;调控云主导节点和协同节点交互的任务、规则等数据,即管理数据流。其数据流如图9所示。
图9 调控云广域云边协同数据流Fig.9 Wide area cloud-edge collaborative data flow based on dispatching and control cloud
1)业务数据流
业务数据流涉及的电网数据来源于电网采集设备,通过本地局域网将原始数据上送到协同节点。协同节点部署流式处理和批量处理功能(数据计算模块内),根据调控云主导节点下发的数据采集范围和数据处理规则,分别针对实时数据(流式处理)和历史数据(批量处理)进行清洗、校验等处理。协同节点处理后的优质数据,通过数据上送模块,转换为数据报文,通过总线或者协议的方式发送到调控云主导节点。
调控云主导节点的数据接收模块接收到各协同节点发送的电网数据后,通过报文转换和数据整合功能,进行数据缓存。对整合后的数据,通过多源数据质量智能综合评估功能(数据评估模块内),进行数据质量分析评估,确定每个协同节点上送的数据质量。之后对于优质的数据,存储到调控云主导节点的数据库中,为调控云业务应用提供数据服务。
2)管理数据流
管理数据流涉及调控云主导节点和协同节点之间的任务和规则交互。在上述业务数据流中,全局规则管理模块和全局任务调度模块获取数据质量校验、评估结果,确定算法规则和任务是否需要调整。如果需要调整,将调整后的规则和任务通过总线反馈给相应的协同节点,协同节点进行规则和任务接收,并在协同节点进行规则应用和任务执行。
调控云目前已有13家省级协同节点接入国分云主导节点,基于调控云架构的广域云边协同技术已应用到调控云的数据质量管理中,实现了电网模型、运行数据的高效汇集和处理,应用成效显著。
调控云的边缘服务与云服务对比,最直接的优势就是低延迟和高带宽,边缘节点内的应用同处一个局域网,可以保证足够低的延时和足够高的带宽。而云中心在空间上一般偏离用户,如果将数据从源端采集后直接上送至云中心处理,延时会相对较高,同时云中心整体的带宽占用很大。表2展示了一般情况下的边缘节点相对于云中心在延时、带宽上的优点。这种优势对于实时性要求较高的应用,采用边缘协同计算效果更明显。
表2 延时与带宽对比Tab.2 Comparison of delay and bandwidth
对边缘协同的单任务性能进行测试,本文选择2个协同节点作为边缘节点,以主导节点作为云中心,通过模型校验(包含合规性校验、冗余性校验、统计值校验、合理性校验、规范性校验、完整性校验、图形和拓扑校验)、量测数据同步、数理分析3类计算任务,分别进行由云中心单独处理和由各边缘节点云边协同处理的性能进行分析。
采用实际调控云系统中主导节点和选取的2个协同节点某一天的数据进行分析,计算任务的模型对象按发电厂、变电站、发电机、交流线路、母线、变压器、绕组、断路器、隔离开关、接地刀闸、并联电容器、并联电抗器12类一次设备及其拓扑连接关系、量测数据进行统计。其中,模型校验分别按云中心和边缘节点存储的全电压等级模型数据量进行计算;量测数据同步按边缘节点汇集全电压等级量测数据,云中心汇集220 kV及以上量测数据进行计算;数理分析按母线的电量(积分电量、采集电量)相关性进行分析。具体计算任务的数据量如表3所示。
表3 计算任务数据量Tab.3 Data volume of computing tasks
图10表明对于不同的任务,结果有很大的差异。数理分析应用在边缘节点处理的耗时较云中心略长,而模型校验、量测数据同步在边缘节点进行云边协同处理的性能优于云中心单独处理。原因是不同的应用所需的资源不同,云中心相对于边缘节点有更多的计算资源,计算能力更强大;而边缘节点具有更高的带宽和较低的网络延迟。对于同一种应用而言,不同资源配置的边缘节点在任务处理结果上也会略有差异。总体来说,通过适当的边缘计算服务,在应用对于硬件资源需求不高、而对于低延时高带宽需求较高的情况下,边缘节点相对于云中心单独处理具有明显优势,可以满足应用需求。
图10 单任务处理时间对比Fig.10 Comparison of single-task processing time
以云中心和某省协同节点的数据清洗、上送任务协同为例,进行任务分解策略分析。首先将调控云汇集的数据分为量测、电量、告警、事件、计划、预测、气象七大类,进一步根据实际数据发现的问题及应用对于数据的需求,将每类数据的清洗任务分解为数据多源清洗、冗余性清洗、完整性清洗、合规性清洗、规范性清洗、合理性清洗和时效性校验7个方面,因此,共分解为49个子任务。
综合考虑每类数据的数据量(以原始数据量为基准进行归一化)和每个清洗任务的计算时间(以云中心计算时间为基准进行归一化),采用公式(1)的 优 化 目 标 ,取φ1=0.4,φ2=0.1,φ3=0.5 ,因α⊕β=1,故只需求解α即可。α计算结果如表4所示。
表4 数据清洗任务分解策略Tab.4 Decomposition strategy for data clean task
以某省协同节点的量测数据为例,进行数据量分析,如表5所示。
表5 量测数据量对比Tab.5 Comparison of measurement data volume
广域云边协同架构将云中心所需的数据在边缘节点直接进行计算,然后将处理后的高价值数据传送到云中心,供云中心作分析决策,有效节约了云中心的存储空间,减轻了存储压力。基于广域云边协同技术,调控云220 kV以下的电网量测数据存储在边缘节点,边缘节点通过广域服务总线对云中心提供这些量测数据的广域数据访问服务,实现在不占用云中心存储空间的同时,满足云中心业务应用对220 kV以下电压等级量测数据访问的需求。根据实际运行经验表明,云中心对于220 kV以下电压等级量测数据的访问频度和广域服务响应时间满足业务应用需求。
以一个协同节点为例,将220 kV以下量测数据存储在边缘节点,进行计算后将高价值数据传入云中心,对比将全电压等级数据都传入云中心后计算,云中心在存储容量方面的对比分析结果如图11所示,可以看出,一个边缘节点每天产生数据量约32 GB,通过云边协同存储方式,可节约云中心存储空间约30 GB,1年可以节约云中心存储空间约10 TB。随着后期更多边缘协同节点的接入,云中心可节约更多的存储空间。
图11 不同方式下云中心存储容量对比Fig.11 Comparison of storage capacity of cloud center in different ways
本文基于云边协同技术,利用调控云主导节点和协同节点的体系架构和实际应用,设计了调控云广域云边协同总体架构,并以电网调控数据质量优化应用为例,研究了广域云边协同数据管理和边缘协同计算的功能及计算流程,分析了广域云边协同的数据交互流程。结合目前调控云建设情况,从网络带宽及时延、数据协同处理性能、任务分解策略优化、云中心存储性能等指标进行了对比分析,实际应用结果表明,云边协同技术的应用解决了集中计算带来的调控云网络带宽占用过大、数据时效性不强的问题,缓解了调控云中心的计算、存储压力,同时调控云协同节点的数据质量也得以有效提升。