APP下载

实时/历史数据平台通用应用程序编程接口研究

2013-06-19周升陶敏李智

浙江电力 2013年8期
关键词:历史数据跨平台调用

周升,陶敏,李智

(1.浙江省电力公司电力科学研究院,杭州310014;2.杭州意能软件有限公司,杭州310014)

电力信息化

实时/历史数据平台通用应用程序编程接口研究

周升1,陶敏1,李智2

(1.浙江省电力公司电力科学研究院,杭州310014;2.杭州意能软件有限公司,杭州310014)

随着智能电网建设的逐步推进,实时/历史数据平台在数据存储、共享等方面发挥了越来越重要的作用。由于老的实时/历史数据平台限制了应用的深化推广,浙江省电力公司于2012年引进了国产海迅实时/历史数据库,并在此基础上建立浙江电网实时/历史数据新平台。为保证平台顺利平稳过渡,重点研究了实时/历史数据平台通用应用程序编程接口,以期满足浙江公司实时/历史数据应用发展的需求。

电网运营;实时/历史数据平台;海迅实时/历史数据库;通用应用程序编程接口

0 引言

随着智能电网建设的逐步推进,输变电设备状态监测、用电信息采集、配电自动化等生产系统将产生海量实时/历史数据,浙江省电力公司于2005年引进了PI实时/历史数据库,并在此基础上建立了浙江电网实时/历史数据平台(以下简称PI平台)。历经7年的建设和发展,共计接入包含各级调度SCADA(调整数据采集与监控系统)、电能量、在线监测、营销等数据在内的上百万测点数据。基于这些数据开发了上千个应用,在各项生产业务管理中发挥了重要的作用。但是平台150万测点规模已不适应现有应用发展的需求,而平台扩充与运维成本又非常昂贵,限制了各项业务的进一步深化应用。

为了解决上述问题,2012年,浙江省电力公司与国网电科院共同承担了国家电网公司科技项目“分布式实时数据库管理系统研发与应用”,确定了依托国产海迅实时/历史数据库建立浙江电网实时/历史数据新平台(以下简称HS平台)。为保证平台顺利平稳过渡,从数据库底层API入手,研究了一套PI平台与HS平台通用的API(Universal API,通用应用程序编程接口,以下简称UAPI),从而实现平台应用和数据接口简单快速的迁移。

1 现状分析

1.1 平台数据写入

自PI平台建成以来,在全省范围内已经接入了省/地/县调SCADA、电能量、用电信息采集、输变电设备在线监测等主要业务系统数据,部分地区局还涉及蓄电池在线监测系统、电压质量综合管理平台、变电站设备温度在线监测系统、IT设备实时监测等其他系统的数据。

各数据源系统的实时/历史数据按照101,DL/T 860等标准规约或通过Web Service,E文件等方式接入到PI平台中。平台的数据接入接口接收到这些数据后进行解析,最终都调用PI-API/ PI-SDK写入到PI实时/历史数据库中[2],写入流程如图1所示。

图1 PI平台数据写入

1.2 平台数据访问

自PI平台建成以来,浙江省电力公司在此基础上开发了上千个应用,包括营销管理、生产管理、调度管理、辅助决策、电网规划及信息技术等方面。常用的应用主要有2种方式,一种是由PI客户端工具ProcessBook和DataLink开发,通过PI-ActiveView控件在浏览器中展示,用户在查看应用页面时通过PI-API/PI-SDK连接到PI实时/历史数据库,从而获取数据的更新。另一种是通过建立Web Service或其他通信服务,用户直接访问PI应用,然后统一由PI应用通过PI-API/PI-SDK向PI实时/历史数据库中获取数据[2],如图2所示。

1.3 存在问题

图2 PI平台数据访问

PI平台的数据写入和数据访问都需要调用底层的PI-API/PI-SDK,因此在用HS平台替代PI平台时,原PI平台中的数据接口和基于PI开发的应用都需要进行代码修改,将调用的PIAPI/PI-SDK函数替换为HS-API函数,工作量将非常巨大。

遵循“平稳过渡”的原则,平台迁移会存在一个过渡时期,PI平台和HS平台将并行运作。此时,一部分急于上线的新应用仍会基于PI平台开发。但是当HS平台正式替代PI平台后,这些应用又需要马上进行大幅度修改,造成了重复投资,浪费了大量的人力和物力。

无论是PI平台还是HS平台都会不断升级,PI-API或HS-API也会随着升级而进行修改、扩充,如果平台的数据接口和应用仍直接利用PIAPI/HS-API方式连接数据库,可能会影响到实时/历史数据应用的正常开展。

2 跨平台UAPI

2.1 改造后的平台数据写入与访问

针对单一数据库的底层API接口存在无法支撑跨平台应用的问题。通过屏蔽不同实时/历史数据库的API接口,采用统一的UAPI函数供外部应用系统和数据接口调用,才能实现透明性以及跨平台访问[3]。

改造后的平台数据写入如图3所示。各数据源系统的实时/历史数据经过解析后通过统一的数据写入接口,利用跨平台的UAPI写入到PI实时/历史数据库或HS实时/历史数据库中。

改造后的平台数据访问如图4所示。无论是PI平台还是HS平台上的应用,都通过统一的数据访问接口,利用跨平台UAPI从PI实时/历史数据库或HS实时/历史数据库中获取数据。

图3 改造后的平台数据写入

图4 改造后的平台数据访问

2.2 常用UAPI方法

遵循《国家电网公司海量历史准实时数据管理平台典型设计》对平台数据访问服务的要求,以标准编程语言实现了具有跨平台特性的UAPI。

根据功能的不同,对UAPI进行了分类,具体包括以下5组:

(1)连接维护组:实时/历史数据库的连接、资源初始化、时间标准等,具体函数如表1所示。

表1 连接维护组

(2)测点管理组:对测点的增、删、改、查,以及对测点属性的查询、修改等,具体函数如表2所示。

(3)数据写入组:向单个或批量测点中写入某个时间点或某段时间内的数据,具体函数如表3所示。

(4)数据查询组:查询单个或批量测点的实时/历史数据,具体函数如表4所示。

表2 测点管理组

表3 数据写入组

表4 数据查询组

(5)数据统计组:查询单个或批量测点一段时间内的统计数据及按照特定条件过滤后的数据,具体函数如表5所示。

2.3 UAPI调用过程

表5 数据统计组

在使用UAPI前需判断所连接实时/历史数据库的类型(PI,HS或者其他),利用该数据库提供的API文件和自定义的UAPI文件进行封装、加载后方可使用。

调用UAPI写入数据的一般过程如图5所示。首先连接实时/历史数据库,然后根据测点名称获取测点ID,查询到测点ID后直接把数据写入到实时/历史数据库相应测点中,如果查询不到测点ID,则先新建测点,再写入数据,最后断开实时/历史数据库连接。调用UAPI查询数据的过程与写入类似,如查询不到测点ID则表示该测点不存在,无法获取数据。

图5 数据写入调用过程

2.4 UAPI优势

(1)减少平台迁移和升级的工作量。UAPI提供了统一的接口函数,对PI和HS等实时/历史数据库都是通用的。因此,平台上的接口和应用基于UAPI进行开发既可缩短平台迁移的周期,也能减少重复投资,降低信息化建设成本。

(2)支撑跨平台应用的开展。UAPI提供了跨平台的标准接口,方便各应用从不同平台获取数据,支撑跨平台应用的快速开发和部署。

(3)提升平台数据写入和数据访问安全。UAPI提供经过标准封装的平台接口,降低了外部应用和接口直接调用底层API所带来的信息安全风险,提升了信息综合利用和统一管理水平。

3 跨平台UAPI测试

结合目前PI平台与HS平台中已存储的SCADA数据对UAPI方法进行测试,结果保存在日志文件中。从数据查询组、数据写入组和数据统计组中各选取一个方法为例进行说明。

图6显示的是分别使用PI-API,HS-API和UAPI查询变电站有功和无功测点的实时数据情况。可以看出通过UAPI方法查询到的实时值与通过PI-API和HS-API查询到的完全一致,实现了PI和HS中原有API的功能。

图6 查询测点实时值打印日志

图7显示的是分别使用PI-API,HS-API和UAPI写入变电站有功和无功测点断面值的情况。共写入10个测点的断面值并进行了查询,如果查询结果与写入的一致,则返回“写入成功”。从图7可以看出,通过UAPI方法正确写入了这10个测点的断面值。

图8显示的是分别使用PI-API,HS-API和UAPI统计变电站有功和无功测点某时间段内最大、最小值的情况,表明通过UAPI方法统计的结果与PI-API及HS-API统计的是一致的。

图7 写入测点断面值打印日志

其他UAPI方法也逐一进行了测试,实现了应具备的功能。由于UAPI是在PI-API和HSAPI的基础上按照标准格式封装而成的,所以效率不如API。从图6和图7中也可以看出,查询实时值和写入断面值时比HS-API慢,还需要在今后进一步研究和完善。

4 结语

跨平台UAPI屏蔽了底层数据库的实现细节及差异,对外提供统一的访问接口,为上层应用服务,从而有效解决了实时/历史数据平台迁移和升级过程中碰到的问题,为今后实时/历史数据平台的建设和应用提供了强有力的技术支撑。

图8 统计测点最大最小值打印日志

[1]陈树勇,宋书芳,李兰欣,等.智能电网综述[J].电网技术,2009,33(8)∶1-7.

[2]陶敏,郭宁.PI实时/历史数据库系统平台架构优化[J].浙江电力,2011,30(8)∶1-8.

[3]周升,陶敏.实时/历史数据库平台通用访问方法研究[J].浙江电力,2012(12)∶94-98.

(本文编辑:徐晗)

Study of Universal Application Programming Interface in Real-time/historical Data Platform

ZHOU Sheng1,TAO Min1,LI Zhi2
(1.Z(P)EPC Electric Power Research Institute,Hangzhou 310014,China;2.Hangzhou Ensoft Software Co.,Ltd.,Hangzhou 310014,China)

With the gradual advancement of the smart grid construction,real-time/historical data platform plays a more important role in data storing,data sharing and other aspects.As the old real-time/historical data platform has limited the deep promotion of applications,Zhejiang(Provincial)Electric Power Company introduces domestic Haixun real-time/historical database in 2012,and constructs new Zhejiang power grid realtime/historical data platform based on it.To ensure the smooth transition of the platform,this paper focuses on the real-time/historical data platform universal application programming interface in accordance with typical design of state grid in order to meet the development demands of real-time/historical data application.

power grid operation;real-time/historical data platform;Haixun real-time/historical database;universal application programming interface

TP317

:B

:1007-1881(2013)07-0072-05

2012-12-28

周升(1985-),男,浙江杭州人,助理工程师,从事电力行业信息技术工作。

猜你喜欢

历史数据跨平台调用
跨层级网络、跨架构、跨平台的数据共享交换关键技术研究与系统建设
基于设备PF性能曲线和设备历史数据实现CBM的一个应用模型探讨
基于故障历史数据和BP神经网络的接地选线方案研究
一款游戏怎么挣到全平台的钱?
核电项目物项调用管理的应用研究
系统虚拟化环境下客户机系统调用信息捕获与分析①
基于C++语言的跨平台软件开发的设计
基于Hadoop技术实现银行历史数据线上化研究
用好细节材料 提高课堂实效
基于B/S的跨平台用户界面可配置算法研究