胡聪,王鹏,张翠翠,刘翠玲
(国网安徽省电力有限公司信息通信分公司,合肥230041)
随着电网核心业务数字化、智能化的发展,各专业数据分析服务数量不断增长,这些服务具有种类多样、标准不一、共享度不高的特征,主要用于本专业业务分析及预测,缺乏公司层级统一管理及成果共享[1-2]。根据国家电网公司战略部署,数据中台初步建成,数据分析服务将通过数据中台统一构建,用于支撑跨部门、跨层级数据共享分析应用[3-4]。为有效管理公司数据资产并规避数据分析服务应用门槛高、数据难读懂、服务获取难等问题,亟需基于数据中台建立企业级数据分析服务构建标准及构建能力,实现公司共性数据分析服务资产的沉淀,满足横向跨专业间、纵向跨层级间的分析结果数据共享及分析挖掘需求,为各专业提供统一的数据分析服务,提升数据管理水平,打造数据资产良性生态环境[5-6]。
企业中台按照服务能力类型划分共享为业务中台、数据中台。其中数据中台以公司数据中心为基础,根据数据共享和分析应用的需求,沉淀共性数据服务能力,通过数据服务满足横向跨专业间、纵向不同层级间数据共享、分析挖掘需求[7-8]。
数据分析服务构建将以业务应用、业务中台、普通用户等数据分析服务需求的快速响应和高效构建为目标,完成企业级数据分析服务总体设计、形成数据分析服务标准规范及典型技术方案,指导试点单位开展数据分析服务(含数据分析场景)构建及应用,完成数据分析服务能力验证及评估,实现数据分析服务的统一管理及两级服务贯通,打造公司服务设计、服务构建、服务应用、服务管理一体化数据分析服务体系。以分析场景服务沉淀和服务共享为目标,各新建业务系统分析场景全面基于数据中台构建,并以服务化方式发布,实现对数据中台分析服务统一、标准管理,支撑分析服务跨专业、跨层级共享工作[9-10]。
结合电力行业特点,分别给出了数据中台的数据服务接口集成架构、数据服务接口流程、数据服务接口设计、数据服务接口注册发布、数据服务接口形式。
数据服务接口是通过数据中台的数据服务组件,实现安全、友好、可控的对内对外数据服务统一访问。其中数据服务组件应支持数据中台组件接口和第三方接口的数据服务接口统一注册、管理和调度等全生命周期的管理,支持免认证、token、Basic等认证形式,主要提供Web Service和Rest Service两种接口形式。数据服务接口总体集成架构如图1所示。
图1 数据服务接口总体集成架构
数据服务接口流程请求/响应模式由使用者发起请求,数据中台相关组件处理请求,具体交互过程如下图2所示。
图2 数据服务接口流程
服务提供者基于数据服务组件(数据中台)注册相关数据服务接口定义信息,支持数据中台各组件API接口及第三方接口的注册;
服务调用者通过数据服务组件(数据中台)查询数据服务接口定义信息;
服务调用者获取数据服务接口定义信息;
服务调用者向数据服务组件(数据中台)发起数据服务接口请求,数据服务组件(数据中台)请求进行鉴权、路由等处理,并将请求转发到数据中台相关组件或第三方接口;
服务提供者接收数据服务接口请求;
服务提供者对请求进行处理,并返回数据服务接口应答信息至数据服务组件,由数据服务组件对响应进行路由、转换等处理,并转发到服务调用者;
服务调用者接收数据服务接口应答结果。
数据服务接口设计应遵循以下要求:
(1)以业务应用需求为驱动,按需进行服务的生成,遵循企业级服务沉淀共享原则,避免重复生成同一类型、同一性质的服务接口;
(2)按照数据中台数据存储分层架构设计,基于共享层、分析层数据进行数据服务接口生成,原则上不基于贴源层生成服务接口;
(3)严格按照数据分级权限进行数据服务接口访问控制,根据数据业务特点及应用特点设置服务接口的有效期约束,确保服务接口授权范围符合安全管理要求。
数据中台相关的数据服务需基于数据服务组件进行统一注册、发布,并对外提供服务调用。为确保服务接口的有效运行,需常态开展服务接口运行的巡查监控,及时处理服务接口异常,主要的服务接口监控及异常处理规则如下:基于数据中台数据服务接口监控管理功能,按照服务接口对应的业务应用调用频度分别设置监控规则,并进行服务接口的常态监控。根据服务接口监测发现的异常,按以下处理规则进行服务接口异常的处理:针对服务接口状态失效的异常情况,按照服务接口标准操作流程,进行服务状态的重启,并监测服务接口重启后的状态;针对服务接口访问延迟、响应时间过长,结合监测日志分析结果,进行服务接口的访问流量的优化配置或其他并发参数配置;针对服务接口异常重启或参数配置优化无法解决的异常,转入服务接口故障分析处理流程,进行详细分析处理。版本更新分为新版本上线和旧版本下线两个阶段,数据服务接口版本更新如图3所示,具体要求如下。
图3 数据服务接口版本更新
数据服务提供者在数据中台数据服务组件注册新版本数据服务接口;数据中台数据服务组件发布新版本数据服务并自动替换老版本数据服务,同时下线老版本数据服务;数据服务调用者调用新版本数据服务。
系统间交互的数据宜采用UTF-8字符集进行编码。服务接口集成以Web Service和REST Service为载体。Web Service采用基于XML的数据格式,REST Service应采用基于JSON的数据格式。其中Web Service 协议栈相关协议要求如表1。
表1 Web Service 协议栈
REST Service为载体的Web Service 协议栈相关协议要求如表2。
表2 REST Service 协议栈
数据服务命名是为表示各个数据服务定制一个规范的名称,用于能够容易的识别、检索出某一服务,因此,数据服务的命名规范如下:
数据服务名称应由数据服务提供者组织机构、数据服务所属应用域、自定义字段和版本号四部分组成,中间以“_”分隔,具体要求如下:数据服务提供者组织机构,以国家电网有限公司单位/部门简称命名;数据服务所属应用域,根据业务部门的应用场景简称命名;自定义字段,服务提供者按需增加的字段,用作区分同类应用域下的数据服务;版本号,描述服务接口的版本信息,如v1.0.0。
在数据服务建设单位范围内保证数据服务名称唯一、无歧义。数据服务名称允许出现中文、英文、数字、下划线,且必须以中文或英文开头,禁止以数值、下划线等开头,名称长度不超过50个字符。数据服务命名应使用中性或褒义性质的词语,避免贬义性质的词语,避免使用生僻字。
依托国网安徽电力数据中台,遵循数据服务建设规范要求,模拟数据服务请求及返回应答,数据服务请求示例如下所示。
https://apigateway.cn-sgcc.com/?Action=DeployApi&ApiId=d6f679aeb3be4b91b3688e887ca1fe16&StageName=release&Description=for_test1&<公共请求参数>
数据服务XML格式返回示例如下所示。
数据服务JSON格式返回示例如下所示。
{“RequestId”:“CEF72CEB-54B6-4AE8-B225-F876FF7BZ015”}
通过遵循数据中台数据服务格式规范,实现统一数据服务格式,达到预期的数据中台数据服务要求,进而可以分析得出本文设计的数据中台数据服务规范的可行性。
针对当前电力数据中台数据服务建设规范需要,本文提出了基于数据中台的数据服务建设规范方法,给出了数据服务接口集成架构,阐述了数据中台服务服务接口交互流程,设计了数据服务接口注册发布、协议格式规约等,通过数据服务请求实验验证了数据服务建设规范的可行性。