电力调度监控系统的实时数据库的研究与设计
2021-07-29陈飞
陈 飞
(云南电力调度控制中心,昆明 650011)
0 引言
实时数据库作为电力调度监控系统中的核心平台,是电力调度监控系统中的重要组成部分,其安全性直接影响整个电力调度监控系统的安全性能。为此,提高实时数据库的信息传输效率以及安全性成为研究重点[1]。实时数据库的数据在电力调度监控系统中以离散式方式存在,每台计算设备中均包含一份相对完整的文件拷贝副本,或副本的部分文件具备自身独立的数据库,且每个实时数据库之间由网络进行互连,共同构成一个相对完善且全局分布紧密的数据库。实时数据库的本质就是定时限制,必须遵循时间一致性的设计准则。当前对电力调度监控系统的实时数据库的研究中,主要通过ODBC转储,但此方式很大程度上具有局限性,存在传输效率慢的问题[2]。在国外,针对电力调度监控系统的实时数据库的研究起步较早,Motherwell Information System公司推出Macro View产品是世界上较早的实时数据库。目前,在国内外使用较为广泛的是Plant Information System实时数据库,以其强大的数据检索能力,在众多实时数据库中脱颖而出。为了更好地优化电力调度监控系统中的实时数据库,本文在对其进行研究的基础上,设计出一种电力调度监控系统实时数据库,为实时数据库的研究与设计提供更为广阔的发展空间。
1 基于电力调度监控系统的实时数据库设计
本文设计的电力调度监控系统的实时数据库主要功能包括:数据采集、数据处理、数据存储以及数据查询,并且具备实时数据监控的能力。采用三层架构的方式对实时数据库进行设计,基于电力调度监控系统的实时数据库体系结构如图1所示。
图1 基于电力调度监控系统的实时数据库体系图Fig.1 Real-time database architecture diagram based on power dispatching monitoring system
基于电力调度监控系统的实时数据库的核心内容就是实时调度,可以通过三个步骤完成基于电力调度监控系统的实时数据库设计,具体内容如下文所述。
1.1 实时数据库模块设计
在本文设计的实时数据库中,共分为3个组成模块,分别为:资源管理模块、事务调度管理模块以及数据管理模块。其中,最主要的模块是事务调度管理模块,可以实现数据库实时性的功能[3]。本文设计的实时数据库实时事务调度具体流程为:首先,在电力调度监控系统收容状态下采集新事务;其次,对事务进行优先级分配,完成后则进入就绪状态;将处于就绪状态的事务投入电力调度监控系统中,进入执行状态;最后,根据事务的实时状态决定是否执行,若处于执行状态的事务被其他事务抢先则进入阻塞状态,若未出现此情况则进入完成状态。由此可见,在实时事务调度中最重要的部分就是事务的优先级,本文通过实时事务调度算法计算事务的优先级[4]。设事务的优先级为s,则其计算公式为:
式中,d为实时事务调度截止时间,t为电力调度监控系统的当前时刻,p为电力调度监控系统运行的估算时间,r为实时事务已接受处理的时间[5]。当多个事务并发时,需通过式(1)确定事务的优先级,根据优先级决定处理的先后顺序,优先级越高则越优先处理,数据库内首先创建事务线程,按照计算所得的事务优先级进行分配,形成新的优先队列,最高优先级的最先执行,若其中有冲突事件,则需判断该事务是否需要重新计算优先级,从而进行实时的事务调度。
1.2 内存数据库存储结构
在完成实时事务调度的基础上,设计实时数据库的内存数据库存储结构[6]。考虑到电力调度监控系统中的数据需要常驻磁盘,要求实时数据库的内存版本必须为主拷贝。因此,设计的内存数据库存储结构如图2所示。
在图2所示的内存数据库存储结构示意图中,A1表示易失内存,为实时数据库中的存储器;A2表示不易失内存,为临时的固定存储器;A3表示磁盘存储器,称为MMDB;A4表示档案式存储器,如磁带,一般情况下处于脱机状态[7]。从电力调度监控系统看来,每个变电站包括上千个数据采集点,为防止数据在存储过程中出现数据丢失的现象,在基于电力调度监控系统的实时数据库设计中,需给每个数据分配一个或多个存储类,提高内存数据库的存储性能。
图2 内存数据库存储结构示意图Fig.2 Schematic diagram of memory database storage structure
1.3 实现实时数据库主动功能
基于电力调度监控系统的实时数据库必须具备主动功能,运用面向对象技术,将一个应用实体表达为一个类,能够实时地对数据表进行插入、更新和删除操作[8]。电力调度监控系统在运行中很容易出现突发事件,影响实时数据库的正常运行,可以通过以下步骤解决该类问题。
首先,可以利用SSA理论明确实时数据库数据源信息的变化规律,进而提高实时数据库信息整合精度,设原始数据为A,精度整合后的数据为An,则数据库信息整合精度公式为:
式中,n为整合次数,h为系数。
其次,运用整合后的数据库信息来重构数据源信息时间序列的相空间,计算公式为:
其中G为空间序列,An为整合后数据,M为嵌入维数,Rn为置信度。
最后,计算数据源信息在时间模式上的初始信息权重,获取实时数据库信息时间序列。设实时数据库数据源信息的变化规律为Q,则其计算公式为:
式中,t表示数据源信息一维距平化时间矩阵,t=[t1,t2,…,tn],n∈ℝ;σ表示数据源信息一维距平化时间矩阵的落后协方差矩阵;M表示嵌入维数;j表示落后协方差矩阵的行数,j=1,2,…,n,n∈ℝ;l表示落后协方差矩阵的列数,l=1,2,…,n,n∈ℝ;k表示数据源信息在空间上轨迹矩阵;f表示在空间上轨迹矩阵中的元素,f=1,2,…,n,n∈ℝ[3]。因此,本文可以通过定义规则库实现数据库的主动功能。实时数据库主动功能结构如图3所示。
图3 实时数据库主动功能结构图Fig.3 Real-time database active function structure diagram
通过图3可知,基于电力调度监控系统设计的实时数据库关键环节是实时数据库引擎[9]。以DataDictionary为操作软件,实时数据库引擎的操作流程为:首先,初始化数据字典,可以通过DataDictionary类中Initialize DD()函数完成此操作;而后,将数据字典写入缓存,可以通过Cache类中的Set()函数完成;在此基础上,在数据字典中载入系统表和默认表,由DataDictionary类中的Load DefaultTable()函数完成;进而获取指定名称表的数据存储索引,由DataDictionary类中的GetTableIndex ID()函数完成;最后,获取内存中相应表的数据,由Table Access类中的Get函数完成[10]。除此之外,基于电力调度监控系统的实时数据库带有数据后台自动存储备份功能,能够多层次地保障了数据的安全。至此,基于电力调度监控系统的实时数据库完成设计。
2 对比分析
2.1 实验方案设计
随机选取北京某区电力调度监控系统作为实验数据来源,模拟此次实验的实验环境。为了提高实验结果的准确性,整体实验在MATLAB上进行,安装双端口万兆位的路由协调控制器,选型计算机运行系统及相关配置。遵循标准安装流程将互联网与PC设备连接,并允许地方区域互联网资源共享,在确保电力调度监控系统中实时数据库格局相同的条件下,搭建实时数据库信息传输区域。相关准备设备参数,如表1所示。
表1 选型设备及参数值Tab.1 Equipment selection and parameter values
结合表1中设定的参数,先用传统的实时数据库进行信息传输,记录信息传输时间,记为对照组;再采用本文设计的实时数据库进行信息传输,记录信息传输时间,记为实验组。通过比较两组实时数据库的信息传输时间,评定出传输效率更高的实时数据库。
2.2 实验结果分析
根据2.1节提出的实验环境及实验步骤,将实时数据库信息传输时间作为此次实验的关键对比指标,整理收集的数据如表2所示。
表2 实验数据对比表Tab.2 Comparison of experimental data
根据表2可得出如下结论:运用本文设计的实验组实时数据库传输信息的时间明显短于对照组,传输效率更高,可实现基于电力调度监控系统实时数据库的优化设计。通过算例仿真实验结果可以证明,本文设计的实时数据库能够满足在电力调度监控系统中实际运行需求,可以投入使用。
3 结束语
电力调度监控系统中实时数据库的研究愈发受到重视,基于电力调度监控系统的实时数据库也经历了从起步到快速发展的阶段。因此,本文对电力调度监控系统的实时数据库进行研究并优化设计是十分必要的。对比实验结果表明,设计的实时数据库是具有现实意义的,能够为提高电力调度监控系统中实时数据库的传输效率提供理论支持,拓宽了电力调度监控系统中实时数据库方面的研究广度与深度,为未来实时数据库信息传输方面提供参考。但本文不足之处在于,没有对基于电力调度监控系统中实时数据库的数据模型进行深入分析,这一点可以作为电力调度监控系统中实时数据库领域日后优化设计的研究内容之一。