Abstract: The access interfaces of the relational database, real-time database, history database and plan database are integratedand the development of a database application program is simplified. An integrated database searcher (DBSCH) and an integrateddata manager (DBTOOLKIT) are designed and realized, by which an integrated data management platform is formed. Thisplatform has been applied to the power market operator system in He' nan and the prospects in power dispatching automationsystem are fairly good.
Key words: electricity market; technique support system; database searcher; data manager
摘要:上海论文网将关系库、实时库、历史库和计划库的访问界面统一起来,规范并简化了访问数据库应用程序的开发,设计并实现了可以集中关系库、实时库、历史库和计划库的数据库检索器(DBSCH)和数据管理工具(DBTOOLKIT)。这些技术形成了集中数据管理平台,该平台已被应用于河南电力市场技术支持系统中。实际应用证明了该技术在电网调度自动化系统中有较好的应用前景。
关键词:电力市场;技术支持系统;数据库检索器;数据管理
0 引言
电力系统的迅猛发展需要完善、先进、可靠的电网调度自动化系统来保证[1]。近年来,对电力企业部分解除管制、进行市场化运行是电力行业改革的热点[2]。市场化改革对传统的电网调度自动化系统提出了更高的要求。电力市场技术支持系统是传统电网调度自动化系统的扩展,需要处理的电网数据更加复杂,数据量更加庞大[3]。电网数据也呈现出多种商用库、多种数据源、多种应用等特点。传统的调度自动化系统针对不同的数据库分别开发各自的数据库访问方法、各自的检索界面和各自的数据管理工具。这就带来了一些问题:一方面,软件开发比较混乱,开发和维护成本高,软件也不容易具备跨数据库能力;另一方面,用户需要学习掌握不同的数据库检索和管理工具,增加了用户使用软件的难度。为了解决这些问题,迫切需要统一的数据管理平台,为开发者提供统一的数据库访问接口,为用户提供统一的数据检索工具和数据管理工具,集中管理繁杂的电网数据。本文在整体分析电网调度自动化系统数据处理的基础上,设计并实现了统一的数据访问接口、统一的数据检索工具和统一的数据管理工具。统一的访问接口将关系库、实时库、历史库和计划库的访问界面统一到统一数据访问对象(IDAO)中,规范并简化了访问数据库应用程序的开发。统一的数据库检索器(DBSCH)为用户提供了一致的检索各种数据库的画面和方法。统一的数据管理工具(DBTOOLKIT)使对各类数据库的管理统一到同一个工具中,避免用户为了熟悉不同的数据管理工具带来的麻烦。这3部分构成了集中数据管理平台,该平台已被应用于河南省电力市场技术支持系统中。
1 总体设计和系统结构
面向对象技术在软件的重用性、继承性、封装性、开放性等方面带来了革命性的影响。采用面向对象分析、面向对象设计、面向对象编程的软件在结构上更加合理,具有更好的扩展性、维护性。新一代的电网调度自动化系统应全面采用面向对象技术,支持面向对象的标准[4]。电力市场环境下的调度自动化系统的功能越来越丰富,结构越来越复杂,数据管理平台在结构上必须有更广泛的开放性[4,5]。软件整体结构分为多层实现,各层间功能相对独立,层与层间通过相对固定的接口联系在一起,对底层的修改不影响上层。通过这种多层开放式结构实现了开放体系结构。遵照上面的设计原则,软件组织按多层开放式结构组织,如图1所示。软件完全采用面向对象的方法设计和编写。IDAO及其以下的结构构成了统一的数据访问接口,该接口可以访问各种商用库、实时库以及基于计划库实现的历史库和计划库。DBSCH和DBTOOLKIT是基于IDAO实现更高层结构。通过这样的软件结构,实现了将各种数据库访问和管理都集中统一起来的目的,同时保证了基于该平台实 现的应用程序具有很高的跨数据库平台的能力。
2 开发实现
在电力市场技术支持系统中,包括关系库、实时数据库、历史数据库和计划数据库等几种数据库类型。这些数据的访问接口都不相同。本文就是致力于实现能统一这些数据库的访问、检索和管理的平台技术。目前,在国内调度自动化系统中商用库大多采用Oracle和Sybase。不同的商用库间在访问界面和支持的数据类型上都是不大相同的,开放关系库访问对象(OSQL)层封装了对标准关系库访问的界面。在统一的访问界面下对Oracle,Sybase和Mysql等不同数据源开发相应的访问支持驱动程序,该技术类似于微软的开放数据库连接(ODBC)技术,但比ODBC简洁,更适合调度自动化软件的需要。OSQL隔离了数据源的差异,使对关系库的访问成为透明的。它同时针对不同数据库对数据类型支持的差异,规范了数据库访问变量类型。该层确保了访问数据库的程序可以移植于不同的数据库。商用库和实时库是基于关系模型的,通过访问关系表和视图实现数据库的访问。历史库和计划库是基于商用库实现的,其数据具有与时间相关的属性。历史库和计划库用来记录某一时刻的电网运行、预测或规划的数据。图2中给出了数据库访问对象在面向对象编程实现上的关系。IDAO是统一数据管理平台访问数据库的核心,它提供了统一的访问接口。表访问对象(TDAO)、历史库访问对象(HDAO)、计划库访问对象(PDAO)分别是专门针对关系表、历史库和计划库具体实现的类。IDAO除了提供直接访问数据库的功能之外,还支持数据访问对象的嵌套定义、内部运算变量定义和数学表达式计算。TDAO用来访问用关系模型描述的商用库和实时库。它将关系表定义成逻辑视图,逻辑视图是关系表的子集。在逻辑视图中可以指定某些字段为主键,可以为视图及视图中的每个字段重新指定标志名,还可以为表中每个字段制定编辑方式。目前,它支持文本编辑框、下拉选择框、关联表选择框和时间编辑框等几种编辑方式。DBTOOLKIT将按照指定编辑方式提供表中字段的修改画面。整个电网的关系模型采用各种逻辑视图描述出来,属于同一种功能的逻辑视图从属于同一个“应用”。不同应用中的视图可以有相同的名字,以表现同一对象在不同应用领域的特征。通过应用与视图就可以自由定义访问关系库和实时库中的关系表的方法。TDAO包括简单访问对象(SDAO)和复杂访问对象(CDAO)。SDAO对于在表中能用主键惟一确定的记录可以采用应用名、视图名,以及主键值1,…,主键值n来确定记录的检索路径,如果在检索路径的基础上再加上取值域就构成了一个完整的数据访问路径;而CDAO则对于检索条件复杂的数据搜索,直接采用标准SQL语句作为检索路径。HDAO将点名、检索时间、统计类型组成历史库数据访问的检索条件。其中历史库的点名本身就是简单访问对象,所以HDAO派生于SDAO。计划库检索条件除了具有历史库检索条件之外还有计划类型,计划类型用来区分同一计划点名的不同类型,所以PDAO类可以以HDAO为基类派生而来。虽然编程上PDAO是HDAO的子类(见图2),但这两个类在逻辑上是并列的关系(见图1)。数据库访问对象还支持两种序列化技术:一种是面向格式化字符串的;另一种是面向二进制存储对象的。序列化技术将数据库访问对象的主要特征保存为对象序列,因此,序列化技术可以实现数据库对象面向内存、文件等存储介质的存储和恢复。基于数据库访问对象的应用只需要记录数据库访问对象的对象序列,就可以重新构建相应的数据库访问记录,大大简化了编程难度。数据库的访问者通过DBSCH可以在简单易用的图形界面(见图3)上检索各类数据库,并将检索结果形成数据库访问对象或序列对象提供给各种数据库应用程序。DBSCH统一了数据库检索的界面,使各种基于此技术的数据库应用具有同样的数据检索界面和方法。DBTOOLKIT集中管理关系库、实时库、历史库和计划库中的数据。数据管理工具提供了检索、编辑、删除、增加等功能,编辑画面支持用户自定义的功能。数据管理工具的图形界面如图4所示。#p#分页标题#e#
3 实际应用
本文设计实现的集中数据管理平台作为基础支持技术应用于电力市场技术支持系统中。历史库子系统、图形子系统和报表子系统是电力市场技术支持系统中必不可少的部分。目前,这些子系统已应用于河南省电力市场技术支持系统。下面以它们为例介绍集中数据管理平台技术的应用情况。
3.1 在历史库子系统中的应用历史库子系统是调度自动化系统的关键功能,在电力市场下特别是引入了实时交易后有更多的交易数据需要记录,对历史库提出了更高的要求。历史库是按照预先定义好的采集点、采集周期、采集标志周期,取采集点对应的数据将其存储到历史数据记录表中,并根据定义的统计需要进行以日、星期、月、年为周期的以及自定义周期的统计计算,统计结算结果存入统计库。在传统的历史库中,历史采集点一般都是指定好的遥测数据等,用户无法灵活选择数据库中的其他数据作为历史采集点。因此,无法满足电力市场技术支持系统的要求。本文采用IDAO来定义数据采集点,使实时库、关系库中的内容都加入到历史库中,同时,由于IDAO本身支持表达式计算功能,历史库同时具备了计算点的功能。在历史库的采集时刻上,同时需要采集和存储的历史数据是海量的,这些数据需要在很短的时间内存入历史数据记录表中,否则就会影响下一个采集时刻数据的处理,同时还不能对网络和数据库形成太高的负荷,以便最大程度降低对系统中其他程序的影响。历史数据的采集点一般都是面向实时数据库的,采集时间和负荷并不重。存储历史数据是要面向关系库的历史数据表,这个过程成为影响历史库效率的关键。开放关系库访问对象(OSQL)中针对这种需要专门设计了批量存储数据的功能,很好地解决了这个问题。
3.2 在图形与报表子系统中的应用图形与报表子系统同样是调度自动化系统中必不可少的功能,电网运行情况和各级市场中电能交易情况都需要通过图形或报表以直观的可视化的方式呈现给运行人员。在市场方式下,运行人员在关心传统电力系统的安全运行信息的同时,还关注与交易相关的经济运行情况,因此,需要图形和报表表达的电网信息更加复杂,数量也更庞大。传统的调度自动化系统中,图形和报表一般是分别开发各自的数据库访问方法。其缺点是:一方面,功能上不够灵活;另一方面,数据检索不统一,用户必须学习两套定义方法。本文将IDAO应用于图形和报表的数据访问中,从开发和使用上将这两个软件统一起来。电网调度自动化系统中包括多种功能,因此,对应同样的一个对象(例如发电机)在不同的功能(例如实际电网运行、计划模式、历史模式)上,一般有相同涵义的属性(例如有功/无功出力)。这就需要图形和报表支持多应用切换的功能,让定义好的图形和报表可以应用于各种功能下,而不是要为每种功能都定义一套图形和报表。传统的做法是在取数据的环节上判断当前图形和报表在哪一个功能下,然后专门为相应功能编写大量的访问数据库的代码。IDAO本身支持多应用和逻辑视图的功能,为各种功能都定义了相同的视图名,不同功能中的视图具有相同的字段名,但这些字段映射到数据库中的不同位置。当用户需要在图形和报表中切换到不同的功能时,只要修改数据访问路径中的应用便可,这个过程由IDAO自动完成。IDAO使图形和报表系统访问数据的过程变得简单、规范、灵活。
4 结语
本文设计实现的集中数据管理平台是电网调度自动化系统中新的数据访问技术,它提供了统一的数据库访问接口、检索工具和数据管理工具。该技术可以简化数据库应用程序的开发,提高软件的可维护性和扩展性。在实际系统中的应用也证明了该技术在电网调度自动化系统中有较好的应用前景。
参考文献
1 Zhang B M, Deng Y M, Sun HB, et al. An Open and DistributedEnergy Management System. In: Proc of Int Conf on PowerSystem Technology. Beijing: 1994, 498~502
2 史连军,韩 放(Shi Lianjun, Han Fang).中国电力市场的现状与展望(Status and Prospects of Power Market in China).电力系统自动化(Automation of Electric Power Systems),2000,24(3):1~4
3 于尔铿,周京阳,王 兴(Yu Erkeng, Zhou Jingyang, WangXing).电力市场的技术支持系统(Technique Support System forElectricity Market).电力系统自动化(Automation of ElectricPower Systems),1999,23(2):24~28
4 辛耀中(Xin Yaozhong).新一代电网调度自动化系统(A NewGeneration Electric Power Net Work Dispatching AutomationSystem).电力系统自动化(Automation of Electric PowerSystems),1999,23(2):1~4
5 高鸣燕,陆 文(Gao Mingyan, Lu Wen).电网SCADA/EMS/DMS平台建设技术(A Platform Architecture for SCADA/EMS/DMS with Hierarchical and Multi-platform Structure and OverallOpenness).电力系统自动化(Automation of Electric PowerSystems),1999,23(14):41~44