[风采展示]安源电厂煤质检验中心获C... [企业新闻]西安热工院《热力发电》入... [电力科技]南方五省区2月全社会用电... [学术交流]广东公司“五学”打好理论...
首页 >> 技术 >> 技术研发
电力“中长期+现货”市场全业务支撑平台关键技术研究
时间:2020-12-04 08:41:14

         ↓底部

摘要:全国统一电力市场深化设计方案发布实施,现货市场建设不断加快,“中长期+现货”电力市场联合运营的新模式逐步形成。在分析新模式下交易业务需求的基础上,提出 了电力交易全业务运营一体化支撑平台的设计目标和平台 架构。研究了完整市场模型管理、海量数据存储访问、交易 数据组态展示及交易规则变化快速响应等支撑平台关键技 术,结果表明,一体化支撑平台关键技术可有效支撑“中长期+现货”电力市场全业务运营的功能和性能需求。

0 引言 

随着《关于进一步深化电力体制改革的若干意 见(中发〔2015〕9 号)》的发布,我国电力市场改 革不断深化,电力交易品种日益丰富,“以中长期 交易规避风险,以现货市场发现价格”[1]的“中长 期+现货”联合运营模式(以下简称:新模式)逐渐形 成。2018 年,《国家电网有限公司全国统一电力市 场深化设计方案》[2](以下简称:深化设计方案)在 综合考虑体制架构和电网安全运行需要的基础上, 提出了由交易中心负责市场注册、交易申报、交易 结算、信息发布等与市场交易密切相关环节,由调 控中心负责现货和辅助服务交易组织、安全校核等 与电网运行密切相关环节的统一市场联合运营模 式。此模式也成为了电力市场技术支撑平台在交易 中心和调控中心之间功能建设的实际划分标准,两 部门的系统各功能相互协作实现“全时段、全过程、 全环节的交易流程”。 

文献[3]提出了“中长期+现货”联合运营的设计目标,但关键技术主要还是偏重于中长期市场。 目前,传统中长期电力交易系统在满足“现货+中 长期”联合运营平台支撑技术方面存在以下困难: 1)目前交易系统因为缺少电网模型数据,无法对现货交易无约束出清结果进行安全校核。2)目前 交易系统通过关系数据库直接存储访问业务数据, 无法满足新模式下现货交易多时段、多案例等多维 度海量数据的高频次和高性能存储访问需求。3)电 力交易品种日益丰富,交易规则变化更加频繁,目前交易系统采用程序定制开发人机界面和采用单体架构部署应用,开发与升级部署周期长,无法快速响应交易规则变化。 为此,本文在分析了现货市场开启后对中长期 交易系统支撑平台带来的技术挑战,在借鉴国内外 电力市场及相关平台成功设计理念和新技术[4-6]基 础上,提出了适应“中长期+现货”联合运营的交 易系统支撑平台架构设计,并对支撑平台关键技术 进行了分析讨论。

1 总体框架 

1.1 设计要求 

为实现“中长期+现货”市场安全、高效、有 序运营,向市场成员提供准确规范的市场交易信息 和在线交易业务支持,交易系统支撑平台设计综合 考虑相关政策文件[2,7],梳理出如下要求: 

1)双模型支持。目前交易系统经济模型为我 国市场环境下的中长期交易、市场结算等核心业务 提供模型支持[8-9],而电网模型则在调控系统内为计 算分析、安全校核等业务提供了模型支撑[10-11]。为 实现新模式下考虑安全约束的交易出清,交易系统 必须接入电网模型,结合现有经济模型提供双模型 支持。

2)跨应用数据集成。新模式下中长期与现货交易衔接需要跨信息外网、信息安全大区和生产安全大区进行数据交互。系统内需要采用实时数据传输通道,具备消息收发和服务调用机制,保证数据 可靠集成。 

3)交易规则变化快速响应。新模式下交易品种和交易规则快速演化,交易系统支撑平台应能根据需求变化对人机界面和业务逻辑进行快速调整和升级部署,满足对市场规则变化的快速响应。 

4)系统安全可靠运行。交易系统的交易数据机密敏感,现货交易结果甚至直接影响电网安全运行,所以系统各层面必须做好安全防护[12-14]和可靠性设计,保证交易系统安全、稳定运行。 

推荐:

在成功举办前十四期电力交易员仿真训练和电力现货仿真训练营的基础上,兹定于2021年1月7日-8日在北京举办“2021年电力现货交易仿真训练营(总第十五期)”,在进行电力市场改革政策解读的基础上,运用现货交易仿真模拟平台,带领发电企业和售电企业对电力市场交易模式、报价操作、竞价策略等方面进行综合训练,在发售电企业模拟现货交易过程中,对从业人员给予指导讲解,用技术方法解决交易报价问题。以发售电企业实际为导向,并借鉴国外电力市场的先进模式,以电力市场知识为支撑,开展现货交易模拟训练。

1.2 平台架构 

本文系统设计包括现货市场、合约市场、市场 结算和申报发布 4 个子系统,实现省级电力市场日 前和实时现货市场交易、辅助服务交易、中长期合 约交易以及电量结算、信息发布等电力市场全过程 业务,满足电力市场运行和市场监管要求。 综合考虑系统使用对象、系统内、外部数据集 成交互及用户使用便捷等因素,将现货市场子系统 中的实时类应用部署在调度生产安全Ⅱ区,日前应 用部署在安全Ⅲ区;合约市场子系统、申报发布子 系统的信息发布应用、市场结算子系统部署在信息 内网;数据申报发布子系统的市场服务应用部署在 信息外网。系统以相对独立和有机衔接为原则,采 用数据同步、消息通信、服务调用等多种方式贯穿 生产控制Ⅱ/Ⅲ区和信息内、外网各子系统。 交易系统遵循面向服务的设计原则,采用 B/S 及 C/S 混合技术体系,为交易系统开发和管理提供 技术支撑和运行保障。系统架构见图 1,主要包括: 

1)基础设施层。通过虚拟化管理主机、存储 等资源,为系统构建基础运行环境。为满足高性能 的系统使用和访问。数据存储支持关系库、本地与 分布式混合缓存库。基础资源服务支持负载均衡和 主备模式,保证系统高可用。

2)平台服务层。基于服务总线/微服务实现对 所有服务的统一管理,保证应用功能的松耦合与可 扩展。平台服务层主要包括消息总线、服务总线和 微服务 3 种通信方式。注册服务包括模型服务、数 据服务、图形服务、权限服务和流程服务等。 

3)应用层。实现 4 个子系统应用功能,其中: 现货子系统包括日前市场预出清、实时平衡市场、 辅助服务市场运营等应用功能;合约市场子系统包 括交易管理、合同管理、市场成员管理等功能;市 场结算子系统包括根据交易结果、计量数据等进行 结算计算、出具详细结算单据等功能;数据申报和 信息发布子系统包括市场成员注册、数据申报及信 息发布等功能。 

此外,系统管理实现对各类资源的监视管理。 安全防护是系统安全等级防护要求,兼顾考虑市场 交易数据敏感性需求,建立适应电力市场业务的平 台安全防护机制。

微信截图_20201203091209.png

2 支撑平台关键技术 

2.1 完整市场模型管理 

为满足交易出清与安全校核,现货子系统需要 接入经济模型和电网模型,形成完整的市场模型。 电网模型在调控系统源端维护管理,通过数据库同 步实时接入调控系统电网模型,并对模型验证通过 后作为现货子系统电网模型;经济模型在合约子系 统市场成员管理模块源头维护,通过数据同步软件 同步至现货子系统。 经济模型是合约子系统维护的一种“市场成员– 业务单元–经济机组/负荷”的层次结构。其中,市 场成员根据主体类型的不同划分为发电商、输电 商、售电商和电力用户等信息。业务单元根据交易 核心业务划分为交易单元、结算单元等不同业务单 元,解决不同业务模型粒度不一致带来的问题。为 满足不同应用数据的交互共享,业务单元将应用数 据分解到经济机组粒度。通过在两类模型间分别对 经济机组和物理机组、经济负荷和物理负荷之间进 行关系映射(见图 2),形成完整的市场模型。 

微信截图_20201203091313.png

为减轻因大量机组与负荷数据引起的映射维 护工作量,提升效率,本文在上述映射方法基础上, 通过名称关键字提取、信息比对和映射 3 步实现经 济模型和电网模型自动映射。1)根据模型名称提 取出关键字信息,如电厂名称。2)通过名称、所 属地区、容量、电压等级等多维比对分析,相似度 达到设定阈值则表示比对成功,对比失败可以降低 相似度阈值重新比对。3)将比对成功的经济模型和电网模型通过程序进行自动映射。经使用统计, 自动映射成功正确率可达 80%以上。对于未能自动 成功映射的模型则通过手动方式在模型映射管理 模块进行关联维护。 

2.2 海量数据统一存储访问 

新模式下,单次现货交易出清结果或结算计算 的数据记录已达到百万级规模。相比较传统调控系 统主要关心最新时间断面数据,交易系统需要对模 型的不同时间、交易序列等维度海量数据进行快速 访问,这对系统数据存储容量和访问灵活性提出了 更高的要求。为此,本文提出了海量数据统一混合 存储访问方法。其中,关系数据库存储业务全量历 史数据,文件存储非结构化数据,混合缓存库缓存 各类业务数据,见图 3。

微信截图_20201203091347.png

数据统一存储访问技术,除基于传统关系数据 库和文件存储外,主要通过混合缓存存储和统一数 据服务实现海量电力交易数据的高性能存储访问,主要包括 4 个方面的技术: 

1)数据模型。包括关系型和散点型两类。其 中,关系型数据是指通过表、记录过滤条件和域集 合(结构化查询语言(structured query language,SQL) 查询)检索得到的二维数据;散点型数据则是根据主 体域、时间域、交易序列域、案例域等检索域确定 某条记录后,再根据应用域检索某字段而得到的单 点数据。 

2)数据混合缓存存储。本地缓存库具有更好 访问性能优势,但存在存储容量瓶颈,因此用来存 储模型类、参数类等数据量相对较小的静态数据; 分布式缓存库存储性能稍逊本地缓存,但具有存储 容量易扩展优势,因此用来存储交易应用中多时间 断面、多交易序列、多案例等的海量交易业务数据。 通过模型 ID 标识对本地缓存模型和分布式缓存业 务数据进行数据关联,由此实现动态业务数据存储 容量可扩展和模型数据访问高性能的总体最优。 

3)统一缓存数据访问服务。存储层基于本地 和分布式缓存混合存储设计,统一缓存数据服务对 应用提供统一访问接口,屏蔽数据存储位置差异。 为支持界面基于表、域和记录绑定关系型数据、基 于多检索域绑定散点数据,统一缓存数据服务分别 提供了关系型数据和散点型数据访问服务。通过以 上两种数据结构,统一缓存数据服务为上层应用提 供海量电力交易数据的快速透明存储访问。 

4)数据装载与写入。数据装载和写入实现持 久存储和缓存的数据交互,满足系统数据高性能读 写和数据持久存储需求。①数据装载。应用可通过 下装工具根据时间、交易序列、案例等参数将交易 数据从关系数据库灵活预装载到混合缓存库,也可 以在应用访问缓存数据未命中时由数据服务动态 装载到混合缓存库。为节约缓存资源,分布式缓存 中的交易数据配置有效期,目前配置为 1 周,超时 后将缓存数据将清除。②数据写入。调用统一缓存 数据访问服务获取业务数据,再通过关系数据服务 和文件服务实现将缓存中的业务数据持久存储,例 如保存交易出清和案例等结果类数据。 

2.3 数据图形组态展示 

借鉴调控系统图形组态技术,在传统设备图元 基础上扩展了分析展示类图元,针对交易数据时 间、交易序列、案例等多维特征,设计了图元与交 易数据的关联方法,借助 2.2 节统一数据访问服务 和图元组态联动技术,实现了交易数据的图形组态 展示。主要包括以下技术点: 

1)图元模型定义。基于扩展 G 语言,增加分 析展示类图元定义(如曲线、棒图及饼图等),设计 图元显示属性(如图元大小及颜色等)、图模关联属 性(如表、域信息、查询条件及维度设置等),为图 形组态展示提供基础组件支持。 

2)图元数据绑定。数据绑定支持引用界面图 元数据和数据服务查询数据两种方式。前者基于反 射技术动态发现特性实现对界面图元显示数据的 快速访问,后者则是通过统一数据服务访问数据库 和缓存库数据进行关联实时展示,基于数据模型支 持两种关联数据方式:①基于表、域和记录 3 个检 索条件绑定关系表中的二维数据。通过表信息表、 域信息表和应用数据表定位目标表、目标域集合和 目标记录集合进行二维数据展示,该方法主要应用 于表格、曲线等图元。②基于交易数据多检索域绑 定散点数据。交易数据在给定主体、时间、案例、 交易序列、应用等关键检索域值后,可以检索到某 一单点数据,该方法适用于柱图、饼图等散点类数 据图元。其中,为应用域设计了“应用模块+应用 类型+四位顺序号”的应用标签编码规则,实现每 一个应用维度标签到业务数据关系表各域的映射 定义。其中,编码时应用和应用类型编码配置可扩 展,两者为笛卡尔组合关系,如“SBSPQ0001”, 其中“SBS”为结算应用模块编码,“PQ”为电量 编码,“0001”为顺序号,表示月度结算电量,因 此该应用编码表示某结算单元月度结算电量。 

3)图元事件联动交互。基于反射机制设计 3 种 图元组态属性,即图元触发事件、图元响应动作和 图元动态属性。通过将图元触发事件绑定到任意图 元的可响应动作,完成图元交互联动。例如,[按钮 图元.点击事件->表格.数据查询动作]表示按钮图元 的点击事件触发表格的数据查询动作。其中,查询 参数为:[条件 1=文本框图元.输入值属性,条件 2= 选择框图元.输入属性],由此实现了点击按钮图元 后根据文本框和选择框的输入参数查询刷新表格 的数据。基于图元属性、触发事件和响应动作图元, 上述交互示例示意图见图 4。

微信截图_20201203091506.png

以扩展图元模型为基础,主要通过绑定图元数 据实现了图形组态编辑,借助图元事件联动交互技 术实现了组态画面的展示浏览。 

2.4 交易规则变化快速响应 系统为实现交易规则变化快速响应,前端采用 2.3 节图形组态展示,后端采用微服务和持续集成 交付技术,设计适应交易规则快速变化的系统快速 响应技术架构,见图 5。

微信截图_20201203091636.png

1)交易微服务。微服务本身是成熟的技术, 构建微服务遵循粒度适中、规避依赖、无状态服务、 前后端分离等原则。遵循以上原则,电力交易微服 务采用自顶向下的设计方法,具体实施包括 4 步: ①按照交易功能进行分类,对电力交易业务进行梳 理整合。②分析电力交易业务过程,梳理交易业务 流程之间的数据流转和依赖关系。③将梳理过的电 力交易业务进行抽象和分类,减少业务间耦合,并 根据整合结果对数据库按照子系统进行分库设计。 ④根据微服务层次和功能,基于微服务框架组件开 发微服务。 

2)图形客户端微服务调用。包括两种方式: ①微服务调用标志控件。控件可设置微服务请求统 一资源定位符(uniform resource locator,URL)、请 求方法(POST,GET)、微服务鉴权及自定义参数等 参数。控件通过调用代理程序进行微服务调用。 ②web 浏览器控件。为满足复杂大批量数据微服务 请求,图形组件提供 web 浏览器控件,通过设置控 件页面的 URL 运行 web 程序。代理程序和 web 浏 览器控件均通过 HTTP 协议,采用轻量级数据交换 格式 JS 对象符号(Javascript object notation,JSON) 与微服务进行请求应答通信,实现图形组件微服务 调用。

3)持续集成交付部署。持续集成交付部署是 一种软件开发实践,可极大提升开发测试和部署效 率。通过搭建持续集成交付部署环境,实现交易系统的源码版本管理、微服务构建、集成测试和微服 务应用部署的流程自动化,实现微服务架构下交易 系统局部应用的快速稳定升级。 至此,系统前端基于图形组态技术实现了人机 界面需求变化的快速响应,后端结合微服务技术和 持续集成交付部署实践,实现对电力交易应用进行 细粒度解耦和微服务快速迭代研发测试与升级部 署,实现交易规则变化的快速响应。

2.5 数据集成与通信 

新模式下系统各应用间数据集成交互频度和 实时性都较中长期交易模式下有了更高要求,甚至 存在数据跨安全区交互的情况。因此,交易系统的 系统通信与数据集成交互是新模式下交易全业务 流程高效贯通的基础,主要包括以下技术: 

1)数据通信。包括消息通信、传统服务调用 和微服务调用 3 种方式。消息总线和服务总线均基 于消息中间件 RabbitMQ[15]进行设计封装开发。该 设计模式避免通信两端直接连接,在测试性能满足 要求的条件下,降低了网络互通要求,也提升了服 务端网络安全防护能力。通过在消息发送端和服务 调用端配置不同子系统消息服务器地址实现客户 端跨子系统消息通信和服务调用。①消息通信。实 现系统应用按主题进行消息订阅和收发。如,现货 出清与安全校核内部迭代,结算子系各环节时序的 实时衔接,尤其后者相较于传统人工触发模式极大 提升了业务逻辑处理灵活性。②服务总线。基于 RabbitMQ 设计远程过程调用(remote procedure call,RPC)模型,基于传输控制协议(transmission control protocol,TCP)协议实现服务提供者和服务 调用者之间数据通信。服务总线包括服务注册、服 务定位和服务调用及服务监视等功能。基于服务总 线对数据服务、图形服务、模型服务等平台基础服 务统一管理。③微服务技术。微服务作为成熟的技 术生态,主要包括数据通信、服务注册发现、负载 均衡、容错管理等机制。相比较传统服务总线,微 服务具有逻辑清晰,开发迭代速度快、扩展性好等 优势,这对规则频繁变化的电力交易应用场景非常 契合。因此,微服务主要用于各应用服务端业务逻 辑处理,如交易出清服务、交易申报服务等。 

2)数据集成共享。①数据库软件同步。关系 数据库同步工具为子系统间各类业务数据提供了 稳定高效的数据单向同步。各子系统表结构采用统 一设计,每个子系统表集合为系统全表集合的子 集,一致的表结构为子系统间的数据同步提供底层 表结构支持。如,Ⅱ区向Ⅲ区同步电网模型和发布数据等,信息内网子系统间同步经济模型、权限数 据等。②数据服务同步。调度中心侧软件有国产化 要求,而交易中心侧则可以采用国外产品。考虑到 不同数据库产品以及跨部门数据交互安全,现货Ⅲ 区和信息内网各子系统通过跨子系统数据访问服 务实现数据同步。③文件同步。Ⅱ/Ⅲ区之间部署正 反向隔离设备,Ⅲ区向Ⅱ区同步数据只能通过 E 文 件同步方式,如市场成员外网的交易申报数据同 步。随着新一代反向隔离设备消息通信接口支持, 未来Ⅲ区向Ⅱ区同步数据性能将获得提升。 

3)跨语言通信。为充分发挥不同环境下系统 建设技术选型优势,系统支持跨语言通信。系统 C/S 模式采用跨语言序列化组件 protobuf[16]实现 C++/JAVA 消息收发和服务调用的跨语言通信;B/S 模式采用 JSON 实现序列化,实现微服务前后端跨 语言通信。 基于上述数据集成和通信技术,交易系统实现 了跨子系统业务数据全流程集成共享及消息收发 与服务调用的跨语言即时通信。 

2.6 平台安全及可靠性 

交易系统现货交易出清结果将输出到调控系 统进行实时调度,直接影响电网生产运行;交易出 清和结算结果与市场成员经济利益息息相关。因 此,系统必须提供完整的安全策略和高可用技术手 段,确保系统数据安全和连续可靠运行,主要包括 以下技术: 

1)系统数据加密。①信息外网传输采用超文 本传输安全协议(hyper text transfer protocol over secure socket layer,HTTPS)。HTTPS 结合受信任 CA 机构颁发的证书,可确保数据在浏览器和服务 器传输数据不被窃取和篡改。②内网传输采用的安 全套接层[17](secure sockets layer,SSL)是一种标准 协议,可以确保隐私数据传输的安全性和完整性。 ③加密机加密存储。对交易敏感信息,如交易申报 数据,通过加密机采用国密算法加密,保证申报数 据存储安全。 

2)系统边界安全。信息外网与内网采用逻辑 强隔离设备,只允许外网 web 应用对内网数据库按 JDBC 规约进行访问;安全Ⅱ区和Ⅲ区之间部署正 反向隔离设备,通过文件实现跨安全区数据交互, 保证区域边界安全。 

3)系统高可用。①负载均衡。负载均衡根据 实现方式划分为硬负载均衡和软负载均衡,前者价 格昂贵但性能更好,本文外网采用硬负载均衡设备 F5 实现 web 服务器横向扩展和高可用,内网采用 集群实现软负载均衡,如系统服务、数据服务等。 ②主备技术。通过 keepalived[18]软件模拟虚拟 IP 实 现了平台服务器主备高可用;通过系统管理应用注 册监视技术,实现应用服务器主备高可用。 

4)资源监视。资源监视为系统可靠运行提供 了辅助支撑手段,对物理主机/虚拟机、应用及进程、 关系数据库、缓存库、注册服务等实时监视及故障 告警,确保节点故障及恢复后系统仍能健康运行。 

3 工程应用 

浙江 2018 年底启动支持“中长期+现货”联合 运营的交易系统建设。基于本文设计思路和部分研 究成果,经过半年多集中设计研发,交易系统于 2019 年 5 月底启动模拟试运行。试运行期间,基于 本文研究成果的浙江交易系统与传统中长期交易 系统支撑平台技术相比较,在系统功能和性能方面 取得较大提升。 1)完整市场模型。本文支持包括面向交易业 务的经济模型和面向电网安全运行的电网模型,支 持交易申报、交易出清、安全校核、结算等全业务 流程的模型需求,效果比较见表 1。

微信截图_20201203091819.png

2)人机界面组态。本文通过人机组态搭建界 面,与传统交易系统程序硬编码相比,在对界面开 发要求、界面创建方式、搭建界面时间以及界面更 新方式等方面均有提升,效果比较见表 2。

微信截图_20201203091831.png

3)交易规则变化快速响应。本文采用微服务 架构,相比较传统交易系统单体架构,在升级部署、 升级风险、前后端解耦等方面优势明显。综合考虑 人机组态表 2 和表 3 优势,可以实现系统交易规则 变化的稳定、快速响应。

微信截图_20201203091920.png

 4)系统数据通信。传统交易系统不支持消息 通信和服务调用,只支持界面手动事件触发后端业 务逻辑处理。本文引入消息通信和服务调用,在此基础上通过定时任务实现进程间消息自动通信,实 现了全流程自动结算以及安全校核与交易出清环 节迭代,极大拓展了系统功能,以中长期结算为例, 手动月度结算全过程处理需要结算人员 1 天左右时 间,自动结算则只需要对异常环节进行确认,极大 提升结算效率,人工参与不超过 2h 即可完成全部 结算,效果比较见表 4。

微信截图_20201203091925.png

5)数据混合缓存。以性能较好的 Oracle 数据 库模拟传统交易系统数据访问,与本文以混合缓存 数据访问性能相比较,效果比较见表 5。

微信截图_20201203091932.png

通过表 5 可以发现,读写性能较传统模式总体 都有不同量级提升。其中,读性能记录越少性能优 势越显著,写性能数据量越大优势越显著。界面数 据展示规模按数百或数千估算,读写性能可提升数 倍或十余倍。数据混合缓存为现货市场环境下高 频次、大数据量高性能存储和展示提供数据访问 支持。试运行期间,基于本文研究成果的浙江交易系 统有效支撑了浙江电力现货市场试点建设工作,完 成了浙江作为国网范围内首个能源净受入省份的 多次电力市场结算的周连续试运行,累计降低发电 成本数千万元。从 2020 年 6 月底开始,系统将转 入整月结算试运行。 

4 结论 

本文分析了电力“中长期+现货”市场联合运 营模式下电力市场技术支撑平台在市场模型、数据 访问以及交易规则演化响应等方面遇到的问题,探 讨了电力交易系统支撑平台的总体框架以及应用 的关键技术,并结合工程实践验证了完整市场模型 管理、海量交易数据访问、交易规则演化快速响应、 数据集成等对交易系功能、性能及可靠性具有较好 的提升效果。本文研究成果可以为新模式下国内电 力市场技术支撑平台建设提供技术参考。


         ↑顶端