(计算机应用技术专业论文)实时数据采集与共享软件平台的研究与实现.pdf_第1页
(计算机应用技术专业论文)实时数据采集与共享软件平台的研究与实现.pdf_第2页
(计算机应用技术专业论文)实时数据采集与共享软件平台的研究与实现.pdf_第3页
(计算机应用技术专业论文)实时数据采集与共享软件平台的研究与实现.pdf_第4页
(计算机应用技术专业论文)实时数据采集与共享软件平台的研究与实现.pdf_第5页
已阅读5页,还剩40页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

华北电力大学硕士学位论文 摘要 调度自动化系统与管理信息系统是电力系统生产管理和运行的重要组成部分, 实现这两个异构系统的集成和数据交换,将调度自动化系统的实时数据引入到管理 信息系统( m i s ) 中,使管理信息系统能够有效的分析利用实时数据对于促进电力 系统的信息化发展具有重要意义。 论文详细的阐述了电网实时数据采集与共享软件平台的系统结构、工作原理以 及设计与实现,提出了解决电网企业生产网和管理网信息共享以及m i s 各个子系统 同时共享调度实时数据的技术手段,并介绍了系统在电网企业管理信息系统中的具 体应用。 关键词:实时数据管理,实时数据平台,实时数据采集,m i s a b s t r a c t b e c a u s ea u t o m a t i o nm a n a g e m e n ts y s t e ma n dm i sa r et w oi m p o r t a n tc o n s t i t u e n t si n p o w e rs y s t e ma d m i n i s t r a t i o na n do p e r a t i o n , i ti ss i g n i f i c a n tt oi m p l e m e n tt h ei n t e g r a t i o n a n dd a t as w i t c h i n gb e t w e e nt h e s et w oh e t e r o g e n e o u ss y s t e m sf o rf u r t h e rd e v e l o p m e n to f p o w e rs y s t e mb a s e do ni n f o r m a t i o ne n g i n e e r i n g t h i sa r t i c l ed e s c r i b e st h ec o n s t r u c t i o n , w o r k i n gp r i n c i p l e , s o f t w a r e d e s i g n , f u n c t i o n sa n df e a t u r e so far e a l - t i m ea c q u i s i t i o na n ds h a r i n gs o f t w a r ep l a t f o r mi np o w e r g r i d s o m em e t h o d so fs h a r i n gr e a l t i m ei n f o r m a t i o nb e t w e e na u t o m a t i o nm a n a g e m e n t s y s t e ma n dm i s a r ep r e s e n t e d a na c t u a la p p l i c a t i o ni nr e a lp o w e r 鲥dc o m p a n yi sa l s o i l l u s t r a t e d z h e n gp e i h a o ( c o m p u t e ra p p l i c a t i o nt e c h n o l o g y ) d i r e c t e db yp r o f w uk e h e k e yw o r d s :r e a l - t i m ed a t am a n a g e m e n t ,p l a t f o r mo fr e a l t i m ed a t a ,r e a l - t i m e d a t aa c q u i s i t i o n ,m i s 声明 本人郑重声明;此处所提交的硕士学位论文实时数据采集和共享软件平台的研究 与实现,是本人在华北电力大学攻读硕士学位期间,在导师指导下进行的研究工作和 取得的研究成果。据本人所知,除了文中特别加以标注和致谢之处外,论文中不包含其 他人已经发表或撰写过的研究成果,也不包含为获得华北电力大学或其他教育机构的学 位或证书而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均己在论文中 作了明确的说明并表示了谢意。 学位论文作者签名:之i 么整 日期:立竺王 关于学位论文使用授权的说明 本人完全了解华北电力大学有关保留、使用学位论文的规定,即:学校有权保管、 并向有关部门送交学位论文的原件与复印件;学校可以采用影印、缩印或其它复制手 段复制并保存学位论文;学校可允许学位论文被查阅或借阅;学校可以学术交流为 目的,复制赠送和交换学位论文;同意学校可以用不同方式在不同媒体上发表、传播学 位论文的全部或部分内容。 ( 涉密的学位论文在解密后遵守此规定) t , , 作者签名:之二丝丝 导师签名: 易勿b 华北电力大学硕士学位论文 1 1 课题背景及意义 第一章引言 电力能源需求的快速增长促进地电力工业的发展,也推动了电力生产自动化的 不断进步和管理水平的不断提高。 上世纪3 0 年代,电力系统开始建立调度中心,电力调度是由调度员面对一个 固定的系统模拟盘,靠电话联系进行调度指令下达,由现场操作员进行操作完成。 调度无法及时和全面地了解电网的变化情况,在事故状况下调度员只能凭经验摸索 处理 上世纪4 0 年代,电力系统出现了数据采集与监控系统( s c a d a ) 。s c a d a 将 电网上各厂站数据集中显示到电力系统的模拟盘上,这样使整个电力系统的运行状 态一目了然。s c a d a 还可以将开关的变化和数值越限及时报告给调度员,这大大 增强了对电力系统的感知能力,是电力系统的一次重大技术进步。 上世纪5 0 年代,电力系统出现了自动发电控制系统( a g c ) a g c 包括负荷 频率控制( u c ) 和经济调度控制( e d c ) ,增强了对电力系统的控制能力。这是电 力系统又一重大技术进步。 上世纪6 0 - - - - 7 0 年代,电力系统的控制技术经历了由模拟到数字的重大转变。 电力系统的网站运行状态数据全部由远程终端( r t u ) 经通讯通道传送到调度中心。 调度中心实现计算机调度控制和管理。整个电网的运行状态的数据采集、自动发电 控制、网络分析等全都由计算机完成。 上世纪7 0 年代末今,电力系统出现了能量管理系统( e m s ) 。e m s 包括数 据采集、能量管理和网络分析三大功能。这使电力生产由单纯的自动化控制过程向 管控一体化方向发展。尤其是进入上世纪8 0 年代,企业管理信息系统( m i s ) 的兴 起以及电网的复杂度增加,使得管控一体化的需求越来越迫切【1 1 。 但是,目前电力企业的生产自动化系统与管理信息系统处于相互分离状态,彼 此不能有效结合,不能实现管控一体化,数据信息不能集成共享,不利于实现企业 的综合管理。此外,由于缺乏总体数据规划、数据整合,存在或多或少的“信息孤 岛”,部分数据有冗余和二意性,不能融合到整个管理信息平台上。特别是电网的 实时数据,如有功、无功、电压和电流,不能充分地为m i s 所用,不能为决策支持 和数据挖掘服务。实现电力企业管控一体化的关键之一在于解决企业底层生产调度 网络与上层管理信息网络间的数据集成和应用集成问题。但是由于技术发展的原 因,控制网络上分布着不同厂商的不同种类的自动化系统,每个系统只能采集和管 华北电力大学硕士学位论文 理相应装置或设备在运行过程中产生的部分实时数据。因此迫切需要一个统一的数 据平台来集成各种控制系统的数据,同时该数据平台应当可以为上层管理信息系统 提供实时数据支撑【2 l 。 本课题正是在此背景下提出,基于实时数据库的理论和技术设计并实现适合电 网企业管控一体要求的。实时数据采集与共享软件平台”。 1 2 实时数据平台的关键技术 实时数据采集与共享平台设计的关键技术是利用内存数据库技术的特点和优 点来解决实时数据的存储和管理,利用实时数据库中事务调度和并发控制策略来完 成平台实时数据库的事务调度和并发控制。 1 2 1 内存资源管理与数据存储策略 实时数据必须保证能够被快速、及时地存取和处理,尽量保证关键的数据操作 能够在规定的时间内完成。因而,为了提高数据操作的可预见性,实时数据库在数 据存储方式和索引方式上与传统的数据库有很大的不同。为了避免不必要的磁盘操 作和避免不可预测时间的动态资源分配,实时数据库一般采用内存数据库( m m d b ) 来组织数据。 相比传统的磁盘式数据库,内存数据库有自己独特的组织结构,下面分别从数 据库空间结构,数据库物理结构等方面探讨内存数据库的数据组织结构,通过比较 目前的一些流行的存储结构,分析其优缺点,提出自己的看法和设计。 i 数据库空间结构 实时数据库的事务具有时限特征,要求实时数据库系统能较准确估算事务在系 统中的运行时间,使事务在活动期间的i ,o 可以忽略,从而具有可预报性。然而, 对传统的磁盘数据库而言,数据的! o 是造成事务执行时间不确定、预报不准确的 关键因素,所以考虑使用内存介质作为实时数据库实时事务处理的底层硬支撑。 有两个因素决定了基于内存的实时数据库的应用:一是现代应用要求数据库系 统具有高性能。为了保证事务的实时需求并提高性能,传统的磁盘数据库系统是无 能为力的;二是微电子技术的进步导致了存储量很大而且廉价的动态随机存取存储 器( d r a m ) 的大量使用,这使得数据库完全载入内存成为可能。实时数据库常驻 内存可以使对实时性要求高的系统的性能得到极大的改善。例如i o 操作减少、事 务状态转换及其相联c p u 高速缓存的替换大量减少、锁竞争下降,更有效的内存存 储结构和查询处理可被使用等。 实时数据库采用内存数据库技术理想的实时数据库的存储空间是一个四层结 2 华北电力大学硕士学位论文 构1 4 l ,如图1 - 1 所示。 o - 咖 ( o m c h , l - i m ) m i :v o l a t i l em e m o w r - i ) b 岔:n e e * v o l a t i l e r a m ( t e m p o r a l - d b ) 昏习 凇眦 昏习 嘶 图1 - 1 理想实时数据库的存储结构 易失的内存m 1 、不易失内存m 2 ( n o n v o l a t i l e ) 、磁盘存储器m 3 和磁带存 储器m 4 。 m 1 存放支持各事务的工作数据,故称为实时数据库的“工作版本”( o d b ) 。 它由事务直接存取,一般事务也只与它打交道。 m 2 是m 1 的拓延,用以存储一些活动的临时性数据,称为“临时版本”( t d b ) 。 o d b 和t - d b 统称为实时数据库的“内存版本”( m d b ) 。 m 3 用来存放不在内存的数据库部分,当然还要存放用作恢复的数据库备份。 这部分数据库统称为实时数据库的“外存版本”( s d b ) 。 m 4 一般是脱机磁带,用来存储以前数据库某时刻完整状态的映像,称为实时 数据库的。后援版本”( a d b ) ,仅是为了安全保护的目的和作为档案长期保存。 在设计电网实时数据采集与共享平台时采用了m 1 ,m 3 结构。m 1 存储实时数 据,m 3 存储实时数据库结构和历史数据。 2 物理数据组织 实时数据库的物理组织是其总体设计目标( 使内存和c p u 的利用率尽可能高) 的实现基础,其存储结构、索引结构、中间数据存储结构都必须考虑内存的直接存 取这一特征,适合于m m d b 的物理组织方法目前主要有以下几种l 钔。 ( 1 ) 、区段式 区段式组织是基于关系数据模型的。它将存储空间逻辑地划分为“分区”,每 华北电力大学硕士学位论文 一分区存储一个关系,它物理地由若干“段”组成。一个段是内存中一个固定 长度的连续区域,它相当于“页”,但比页大点,是内外存i o 的单位,也是内 存空间分配及内存数据库恢复的单位,区段式数据组织管理机制如图1 2 所示。 图1 - 2 区段式存储结构 一个段中的一个数据记录就是一个关系元组。每个记录有一个唯一标识符r i d ( r e c o r di d e n t i f i e r ) ,它是一个三元组 表示,m 表示申请的标识符,a r g 表示传给申请方法的参数集合,t e m p 表 示申请的操作是否需要满足时间一致性要求的数据。l 表示关于此事务锁的申请和 释放的集合。c 表示关于此事务的约束的集合,例如数据采集事务需要进行的数据 计算子事务p 表示了此事务的优先级在实时数据库的设计和实现时,就是按照 这些元素来描述一个事务。 2 事务调度策略 在传统数据库系统中,事务调度的目标是提高系统对事务的吞吐量。实时数据 库系统的调度目标是能使尽可能多的事务在截止期内完成。在目前的研究中,大多 数的实时调度策略都是基于优先级的。通常优先级分配策略是一个函数,它可能针 对两类不同参数:单个事务或多个事务。当用于单个事务时,函数的结果就是对应 分派策略所确定的该事务的优先级;当用于事务组时,函数的结果是这些事务的一 个排序表。当前基本的优先级分配策略有以下几种【4 l 。 ( 1 ) 、最早放行最优先( e r f ,e a r l i e s tr e l e a s ef i r s t ) 。该策略将最高优先级指派 给具有最早“放行”时间的事务所谓放行时间就是事务可以开始执行的最早时间, 一般就是事务的到达时间。该策略的主要优点是简单,特别优待那些截止期要求较 低的事务。 ( 2 ) 、截至期最早最优先( e d f ,e a r l i e s td e a d l i n ef i r s t ) 。它使最早截止期者的 优先级最高。主要缺点是已过截止期或几乎要过截止期的事务将获得最高优先级。 通常在实时性要求较低的系统中采用这种方法。 ( 3 ) 、价值最高最优先( h v f ) 每一事务由一价值函数,其值最大者最优先。 例如,可选择价值函数:v ( t ) - “w i ( t - t 1 ) w 2 d + w 3 p - w 4 8 ) ,其中t , d ,p ,8 的意义分 别为当前时间、事务的截止期、已执行时间、空余时间,c 、t 1 分别为t 的危机度、 开始时问,各w i ( i = 1 , 2 ,n ) 为加权因子 ( 4 ) 、空余时间最短最优先( l s f ) 事务t 的空余时间s = d = ( t + e p ) ,即推迟 t 的执行而仍能满足其截止期的可推迟事件的估算。d 为其截止期,t 为当前时间, e 、p 分别为事务t 的执行时间估算和已执行时问 华北电力大学硕士学位论文 采用各种调度策略都有其弊端,一种策略通常对一类事务比较适用,但当不同 类型的事务进行调度的时候往往就不能满足截止期的要求,而且无论采用什么策 略,优先级调度都有一个共同的缺陷,即优先级的调度方法都是通过对调度队列进 行排队来实现的。对于不可抢占的调度模型,优先级调度实际上是一种改进的顺序 的调度策略,而对于可抢占的调度模型,它要求高优先级事务的立即执行,而且一 旦最高优先级的事务获得了c p u ,除非它自动放弃,否则其它事务将无法获得c p u 的使用。在实时数据平台的实时数据库系统中,事务通常都能在定时限制中执行完 成。只有在异常情况下,某事务占用了过多的资源或时间,需要采用抢占的方式处 理异常状态。在设计实时数据库过程中,需要根据系统的特点来选择事务的调度策 略 3 实时数据库的并发控制 实时数据库系统不能沿用关系数据库系统的并发控制协议i 掰实时数据库中大 量的事务具有时间限制,强调这些事务具有平等的地位和相同的被调度机会。为了 使尽可能多的事务满足它们的截止期时间约束,在考虑调度策略时,应将事务的时 间约束作为一个重要的因素,越紧急的事务,在不影响数据库系统正确性的原则下, 应较早地被调度运行。当一个事务正在运行时,如果新到了一个更为紧急的事务, 该执行事务应该被抢占。按事务时限分类,事务可以分为硬实时事务、软实时事 务【4 1 实时数据库系统的并发执行应具有如下特点: ( 1 ) 、并发执行的事务具有时间约束和依赖性。 在实时数据库系统中,时间约束是比较严格的,规定事务的时间限制是秒级甚 至毫秒级。此外,当它们并发执行时,事务之间可能存在与时间有关的依赖关系。 比如:事务t l 必须在事务t 2 开始执行之前( 或提交后) 开始( 或提交) ;事务 在运行过程中可能触发子事务,被触发事务与此触发事务并发执行。 ( 2 ) 、必须满足硬实时事务截止期要求,尽可能满足软实时事务截止期要求。 在资源受限的实时数据库系统中,当系统超载时,必然存在某些事务不能在其截止 期内完成。并发控制通过调度来确保事务的并发执行的效果,等同于没有并发执行 时的执行结果,也就是使事务的并发执行调度等价于事务的某个串行调度,从而确 保数据库的一致性。 目前在实时数据库理论界由两类并发控制协议:一种是基于锁的并发控制协 议,主要有两段锁协议、优先级继承机制处理并发控制协议、实时锁协议;一种是 乐观并发控制协议,包括向前确认的乐观算法、向后确认的乐观算法。在文献【6 】 中讨论了这些算法的性能。在一般的实时系统中,如果对时间的约束比较宽松,则 锁协议优于乐观并发控制协议。然而,当可用资源数量很丰富以至于可以容忍大量 资源浪费,并且系统性能主要由并发控制而不是其它资源调度决定时,允许高并发 华北电力大学硕士学位论文 度执行的乐观协议优于锁协议。 在本系统中,软实时性事务较多,系统资源有限,且数据采集的优先级要高于 数据访问的优先级。在这种情况下,并发控制和实时事务的调度策略,需要在现有 实时数据库系统理论基础上进行调整,由于系统硬截止期特性很容易满足,所以不 应当作为硬截止期系统来处理,应当以采用锁协议为基础进行并发控制协议的选 择。 1 3 本文的主要研究内容与章节安排 本课题以电网实时数据采集与共享软件平台的研制为背景,研究和讨论了实时 数据共享平台用到的相关理论和关键技术。通过对实时数据采集接口、实时数据访 问接口、内存数据组织、事务调度和并发控制以及历史数据存储技术的分析和设计, 实现了一个适用于电网企业管控一体化的实时数据采集与共享软件平台。 全文分为六章: 第一章说明课题的背景及其意义,研究讨论了实时数据平台需要的关键技术; 第二章通过对平台设计目标和功能需求的分析给出了平台的整体架构设计; 第三章分别从实时数据的内存组织结构、索引结构、调度模型、历史数据的 存储策略及实时数据库的加载和多线程的处理过程进行了详细的介绍; 第四章结合软件开发中的基于构件的软件总线思想,设计实现了数据采集接 口软件总线; 第五章设计和实现了基于c o m ,n c t ,s o a p 等标准的实时数据访问接口; 第六章介绍了实时数据平台在电网实时数据管理系统中的具体应用。 最后是本文的总结部分,对全文进行了总结。 华北电力大学硕士学位论文 第二章实时数据平台的整体设计 2 1 系统设计目标 实时数据平台是连接生产调度控制系统和企业管理信息系统之间的桥梁,在电 力企业管控一体化的信息化建设中具有举足轻重的地位。自上世纪9 0 年代以来, 软件开发技术得到突飞猛进的发展,各种先进的软件技术纷纷出现,如面向对象的 编程技术、分布式组件技术、u m l 建模技术、1 a v a 技术等。这些新软件技术和开发 工具的运用使得开发复杂的基于企业级的应用变得更加高效,功能更强大,更易于 维护实时数据平台是对电力生产实时数据管理的软件平台,对实时性具有较高的 要求,因此在设计开发实时数据平台时可以充分地利用现有实时数据库的理论和技 术进行设计。同时由于我国电力企业生产调度系统采用的不同厂家的产品,具有较 大的差异性,要求实时数据平台具有较好的集成性、兼容性,能集成不同品牌。此 外,实时数据平台是一个共享平台,需要对管理信息系统等上层应用提供开放的访 问接口,以便于上层应用方便的访问实时数据,进行各种分析挖掘。 具体而一言,对实时数据平台的设计目标可以从实时性、稳定性、集成性、开 发性等四个方面来详细说明。 2 1 1 实时性 实时数据平台中数据和事务都具有定时特性或定时限制,其正确性不仅依赖于 逻辑结果,而且依赖于逻辑结果产生的时间【习。因此,实时性是平台基本的要求。 系统的主要处理对象是数据,要求能高效地管理和组织数据,保证数据满足各 种一致性要求【”。同时在事务处理上存在着时间和资源调度问题,要求能有效地解 决事务间的并发性为了保证系统具有高的实时性,必须要求在设计时系统具有良 好的、优化的数据存储组织结构和索引结构,同时还应该考虑到不同级别的事务调 度以及并发控制等因素,在实现时可以采用多层索引结构、基于优先级的事务调度 等方法来提高系统的实时性。 2 1 2 稳定性 实时数据平台是一个复杂的系统,能支持多种不同类型的客户端实时访问,需 要长时间实时在线地运行,其运行是否稳定可靠对每一个上层应用程序是否正常运 华北电力大学硕士学位论文 行、历史数据的保存是否连续息息相关。因而在设计实时数据平台时必须把保证稳 定性作为首要任务,即使在大访问量和采集量的情况下仍能稳定运行。 2 1 3 集成性 实时数据平台作为生产系统与企业管理系统之间的信息通道,要求其必须具有 良好的集成性,包括与底层生产系统的集成、与企业管理系统的集成、与其他实时 系统的集成。 1 、与生产系统的集成 由于生产系统的建立时间要早于实时数据平台,可能是来自不同厂商的不同时 期的产品,其系统结构和通讯方式也各不相同,这给实时数据平台的实时数据采集 带来了极大的困难罔。因此实时数据平台必须适应不同的数据通讯协议方式,支持 t c p i p 、串口、自定义函数等类型协议,针对不同的系统类型采用不同的数据采集 方式。实时数据平台与生产系统的集成如图2 - 1 所示。 采集站1 图2 1 实时数据平台与生产控制系统的集成 2 、与企业管理系统的集成 实时数据平台中保存着大量的实时数据,这些数据为进一步统计分析、数据挖 掘等提供了真实的依据。实时数据平台要真正体现其价值,更重要的在于如何利用 这些己有的数据。因此实时数据平台与企业管理系统的无缝集成显得尤其重要。企 业管理系统包括生产管理信息系统、设备管理系统、实时数据发布系统、故障诊断 系统等各类管理信息系统。这些管理系统都依赖于关系数据库,所以实时数据平台 必须能与关系数据库实现无缝集成,提供类似于访问关系数据库的方法来访问实时 数据库,如o d b c ( o p e nd a t a b a s ec o n n e c t i o n ) 、a d o ( a c t i v ed a t ao b j e c t s ) 等方 式。 华北电力大学硕士学位论文 3 、与其他实时数据库系统的集成 电力企业可能己经存在着不同类型的实时数据库系统,为了具有更好的集成性 和通用性,实时数据库还需要提供访问其他实时数据库系统的接口,例如与o s i 公 司的p i 系统、a s p e n t e c h 的i n f o p l u s 系统等。这样可以实现企业内部多个实时数据 库系统的互连,使实时数据平台具有更好的通用性,充分利用企业已有的资源。如 图2 2 所示。 2 1 4 开放性 图2 - 2 与其它实时数据库系统的集成 实时数据平台作为实时数据服务的基础构件必须具有良好的开放性和可扩展 性,使用户能基于实时数据平台方便地进行二次开发和数据访问。为此实时数据平 台戍该提供各种不同类型的数据接口,以供各种主流的开发工具使用。一般说来, 至少需要提供以下几种数据访问方式,如a p i 函数接口、c o m 接口、a c t i v e x 专用 访问控件、w e b 访问接口等。不同的开发工具可以根据各自的特点选择不同的接口 方式来访问实时数据平台。实时数据库的开放性如图2 3 所示。 a m 接口 w 明接口 图2 - 3 实时数据平台的开放性 华北电力大学硕士学位论文 2 2 系统功能分析 基于以上提出的设计目标,实时数据平台为了能更好的支持上层管理信息系统 及其他实时应用,在功能上至少必须包括数据采集、实时数据管理、开放数据访问 等。 2 2 1 数据采集 实时数据平台必须具有强大的数据采集功能。实时数据是平台的价值所在,没 有实时数据也就没有实时数据平台存在的意义,所以平台首先必须能从各个生产控 制系统中获取实时信息。考虑到生产控制系统可能以不同的接口方式和不同数据传 送通讯协议提供实时数据,如s o c k e t 通讯方式、串口通讯方式、文件读写方式及数 据库共享方式,针对这些接口类型系统都能提供相应的采集方法。在实时数据平台 中可以通过接口软件来实现数据的采集。 2 2 2 实时数据存储管理 实时数据平台必须具有强大的实时数据存储管理的功能。实时数据采集过来以 后,需要进行合理的组织,建立高效的索引结构,以方便对实时数据的存储和检索。 存储采取的介质可以是内存,也可以是磁盘文件。在内存中存储实时数据的优点是 存取速度快,缺点是内存空间有限,它满足了实时监控软件对近期实时数据的访问 频率高,要求响应时间短的需要。在磁盘文件中存储历史数据的特点与内存中正好 相反,它可以满足某些应用( 如趋势分析) 要求浏览长时间段内历史数据,但对响 应速度要求不高的需求两种存储方式可以互为补充,满足不同应用的需要。 2 2 3 实时数据访问接口 实时数据平台必须具有开放的数据访问接口的功能。实时数据经过采集、存储 管理后,上层应用要想访问实时数据必须通过访问接口来实现,因此提供各种方便 的访问接口至关重要。 华北电力大学硕士学位论文 2 3 系统体系结构设计 2 3 1 设计要点 软件体系结构设计是对软件系统整体格局的描述,它在整个系统的设计实现中 起着框架性的作用。一个良好的系统结构对提高软件的质量、减少开发成本、提高 执行效率以及可维护性都具有举足轻重的作用。在系统结构设计过程中需要注意以 下几点: 1 、高效可靠的微内核设计 考虑到上层企业信息管理软件对实时数据平台稳定性的高度依赖,因而在进行 系统构架时应首先保证整个系统的运行稳定可靠。为此在设计时采用了模块化的设 计思想,把实时数据库的各核心业务( 如数据采集、数据存储管理及数据访问接口 等) 各自独立出来,形成单独的模块。同时依据微内核的设计思想,内核越小、功 能越简单,则系统越稳定因此在内核设计时对核心业务进行简化,只实现必需的 功能,不考虑可选的功能。同时尽可能地减少各核心业务间的藕合性,以提高系统 的鲁棒性。 在系统实现上可以采用c o m d c o m 组件化技术、s o c k e t 通讯技术,把核心业 务模块注册成系统服务形式,以便于客户端访问和监控实时数据平台。 2 、基于b s 或c s 的多层分布式体系结构 多层的c s , b s ( 浏览器服务器) 结构是传统的c s 结构的发展。三层c s 结 构分为三部分:客户、应用服务器和数据库服务器。客户通常实现用户界面,它提 供了一个可视化接口,用来显示信息和收集数据,它只与应用服务器打交道。应用 服务器通常实现应用逻辑,是连接客户与数据库服务器的桥梁。它响应用户发来的 请求执行某种业务任务,并与数据库服务器打交道。在实际应用过程中,该层的组 件通常可分为两个以上的层次,因此这种结构也被称为多层次结构。数据库服务器 通常实现数据的定义、维护、访问、更新以及管理,并响应应用服务器的数据请求。 它的物理实现可以在某一种数据库管理系统中,也可以是多个异种数据库的集合, 这种数据库可以驻留在多种平台上。 在三层或多层c s 结构中,中间件( m i d d l e w a r e ) 是最重要的部件。所谓中间 件是一个用a p i 定义的软件层,是具有强大通信能力和良好可扩展性的分布式软件 管理框架它的功能是在客户机和服务器或者服务器和服务器之间传送数据,实现 客户机群和服务器群之间的通信和两层c s 结构相比,三层c s 结构具有更灵活 的硬件系统构成,对于各个层可以选择与其处理负荷和处理特性相适应的硬件。合 理地分割三层结构并使其独立,可以使系统的结构变得简单清晰,这样就提高了程 序的可维护性。 1 华北电力大学硕士学位论文 在实时数据平台的设计中采用多层c s 结构将可提高系统的安全性、访问效率、 维护性和开发性,是现代数据库及应用设计的流行趋势。同时结合c o m d c o m 的 分布式特性,则系统具有多层分布式体系结构。 2 3 2 设计方案 结合微内核设计方法和多层分布式体系的优点,实时数据平台的整体构架如图 2 4 所示 实时致矧历史数据访问应用 数揖访问接口层 8 远程数据访闯接口 彳r系统内校气于 ( 实时数据访问代理服务), 且 系统雌k 。广 。 系 阜徽 q 幽匿库4 集群历史i = = ) 黼雠b 统 厦 - v 务 系统诊断k 实时教据接收厦务 产 实时致据采集接口层 翻 分布式寅时教据采集接口 气产 s c a d a 、d c s 、r t d b 图“实时数据平台的整体架构图 从图2 4 中可以看出,整个实时数据平台的框架体系分成三层:上层为数据访 问接口层,包括a p l 函数、w e b 访问接口:中间层为实时数据平台的核心层,包括 系统内核、系统监控软件、数据维护软件、系统诊断软件等;底层是数据采集层, 为接口软件。 1 、系统内核 系统内核为精简的内核,它由数据访问服务、磁盘历史数据服务、实时数据服 务和接口调度服务等组成。各服务功能定义明确,接口简单。 ( 1 ) 数据访问服务:提供上层管理信息系统应用软件访问实时数据的功能。它 t 4 华北电力大学硕士学位论文 为各类客户端访阀实时数据平台提供了统一的入口,能有效地对各种访问任务进行 统一调度,从而保证了在多客户端同时访问时仍能保证实时数据平台高效安全的运 行 ( 2 ) 实时数据服务:提供内存实时数据读写的功能,它是内核中最重要的组成 部分它保存了所有测点的当前实时值,所有对实时数据的需求都需要通过实时数 据服务来实现;它还根据历史数据存储策略定时推送历史数据到历史数据存储缓冲 区 ( 3 ) 实时数据接收服务;提供接收实时数据的功能。接口软件是采集实时数据 的工具,它通过t c p i p 、串口、o d b c 等多种方式获得控制系统数据源服务器中的 实时数据,同时它按照系统内部的通讯协议向实时数据平台发送实时数据,实t 数 据接收服务接收实时数据存入缓冲队列交给实时数据服务处理。 2 、支撑软件 在系统内核的基础上,实时数据库系统还提供了相关的支撑软件,包括监控程 序、数据维护程序、诊断程序等。利用数据维护程序可以方便地对实时数据进行维 护,实现对测点的增删和修改;通过监控程序可以实时监控系统的运行状态;通过 诊断程序可以有效分析当前系统存在的故障这些程序为进一步丰富系统的功能和 方便操作提供了有效地帮助。 3 、数据采集软件 数据采集主要是通过接口程序来完成的。在数据采集层,接口软件以t c p i p 、 串口、o d b c 等方式采集节点服务器中实时数据,并通过系统内部的通讯协议传向 数据平台从而实现了s c a d a 、r t d b 等现场控制系统数据源与实时数据平台间的 实时数据通讯。在现场运行中,数据通讯出现故障的频率相当高,因此为了保证整 个系统的运行安全,不同的接口程序之间保持相互独立,不会因其中某个接口程序 出现通讯故障而影响其他接口程序的运行。 4 、实时数据监测及其它上层应用软件 上层应用软件是实时数据平台的客户端,它们通过实时数据平台的访问接口统 一访问实时数据和历史数据。 2 4 本章小结 本章系统地分析了实时数据平台的设计目标和功能需求。在此基础上给出了系 统的体系结构设计方案。该体系结构具有层次清楚、扩展性强、稳定性好等突出优 点,其良好的分布式特性更使得上层企业信息管理系统与实时数据平台能够进行灵 活部署实施。 华北电力大学硕士学位论文 第三章平台实时数据库的设计与实现 实时数据库是实时数据平台的核心组成部分,对各个层次的技术和应用提供了 强大的支持。它是一个数据平台,同时也必须是一个应用平台,既要进行实时数据 的管理和历史数据的转存,又要提供实时的数据访问功能,是整个数据共享平台所 有业务的中枢。 3 1 实时数据组织结构设计 3 1 1 组织结构设计 实时数据必须能够保证被高速、及时地存取和处理,关键的数据操作能够保证 在规定的时间内完成。根据前面第二章对内存资源管理与数据存储策略的分析,为 了提高数据操作的可预见性,避免不必要的磁盘操作和避免不可预测时间的动态资 源分配,系统将实时数据的存放在内存中,采用了静态数据结构,使用大量缓冲和 预分配内存。根据向量( v e c t o r ) 检索效率比较高的特点,系统采用了向量来组织 这些数据,所形成的实时数据的存储结构如图3 - 1 所示【9 l 。其中,现场的每个测点 是由厂站标识、测点类型、和测点标识唯一确定的,每个测点的状态则通过多个参 数来描述,这些参数通常是由现场值、报警标志、报警上下限、工作状态和一些统 计量等组成。 厂站向量铡点类型向量嗣点向量参数向量 图3 - 1 实时数据组织结构 同时考虑到对内存实时数据存取的并发性,本系统借鉴“影子内存”的组织方 式,采用双内存数据版本的方法,就是说,每个实时数据项都具有两个数据版本, 一个临时版本,一个有效版本,其中有效版本保存了该数据项的最近的有效版本。 从实时数据采集接口过来的实时数据只对临时版本进行操作,上层应用程序对实时 华北电力大学硕士学位论文 数据的查询在有效版本中进行。当对临时版本的刷新操作完成后,向有效版本进行 完整拷贝,从而大大提高了系统的并发行。 3 , 1 2 索引结构设计 索引的定义是对存储在介质上的数据位置信息的描述,用来提高系统对数据获 取的效率【埘。索引由一系列索引项组成,一个索引项对应内存中一条实时数据记录, 当实时数据存储结构发生更新时,索引也应同时做出更新。这意味着如果出现测点 变化( 如新增、删除) ,索引也将做相应的变化索引项类似一个两列组成的表: 第一列是索引键,由实时数据测点的标识来生成;第二列是数据指针,指向测点数 据所在的内存位置。通过索引可以提高测点数据的查询速度。 对于磁盘数据库,有多种有效的索引结构,其中最有代表性的是a v l 树、b 树和b + 树,但对于内存数据库它们并不适用【1 1 l 。a v i , 树使用二分查找,查找的速 度很快。对于内存数据库而言,其突出的缺点是存储利用率很低,每一个结点只存 储一个数据项,却有两个指针和其他的相关信息。基于h a s h 表能够提供( 平均上) 最快的方法通过关键字定位一条记录,适合大的数据量的快速查询,内存数据库较 多的采h a s h 表来构造索引1 4 l 。 本系统对于内存实时数据采用多级索引机制实现快速的数据定位: 1 、厂站名称、测点类型索引根据厂站名称和测点类型的数量一般都相对较 少的特点,采用集合映射来组织索引: m a p : 厂站名称) 向量下标 m a p 测点类型标识 向量下标) 其中,厂站名称、测点类型标识为键,向量下标为值,于是就可由厂站名称、 测点类型标识直接得到该向量元素的下标,从而查找到相应厂站、测点类型。 2 、测点索引。针对测点的数量相对都比较大的特点,采用h a s h 表对它们进 行构造索引。为了提高地址计算的效率,用直接定址法来构造哈希函数,采用链地 址法来处理冲突。首先根据初始的数据确定哈希表的长度,一般情况下为了减少冲 突,可以生成一个空向量使该向量的长度大于初始数据的长度,然后由给定的哈希 函数和冲突处理函数把相应的测点的名称映射到向量的各个元素中。如果该向量表 已经装满,只需要在该向量尾部中添加一个元素把新增的数据填充到该元素中,然 后把该元素的下标放到链地址表中。 华北电力大学硕士学位论文 3 2 实时事务调度模型的设计 3 2 1 实时数据平台中事务分析 在实时数据平台中,系统必须对系统产生的“事件”进行及时地响应和处理。 如实时数据的刷新与查询。按照事务的功能进行如下分类: 1 、数据接收事务 当实时数据采集接口程序向数据平台发过来实时数据时触发数据接收事务,它 是简单的只写事务;为了完成短时间内大批实时数据的接收保证实时数据平台中的 数据和数据源的一致性,它应是短的、周期的,应被立即执行的实时事务。 2 、控制事务 当实时数据平台的配置管理程序或数据维护程序需要对平台进行维护和配置 时触发控制事务。这种事务不经常发生但在数据的一致性上有严格的要求 3 、数据处理事务 类似于传统数据库的事务,包括实时数据的查询和刷新,这种事务需要根据事 务的特点,通过调度控制,实现事务在数据一致性基础上保证时间的一致性。 3 2 2 实时事务调度模型的建立 分析实时数据平台的功能,实时事务调度模型主要有以下几个模块组成。 1 、事务请求分析模块 负责接收多个客户端发来的事件请求信息,分析事件并将事件信息挂于事件队 列中 2 、优先级分配模块 该模块实现事务的静态和动态优先级分配,使得系统调度事务有一定的尺度。 3 、并发控制模块 通过加锁机制实现多个事务并发存取数据,避免并发访问冲突。 4 、事务调度模块 该模块通过对系统中某时刻所有请求调度的事务进行优先级比较、冲突加锁处 理等一系列操作后,最终选择本次调度将投入运行的事务。 模块之间的关系如图3 2 所示。 华北电力大学硕士学位论文 l , _ _ 一 ! 苎竺塑 i l务 四 l 调 度 i - 一 并发控锶 i 图3 2 实时事务调度模型 事务调度通过事务队列来实现,当某一事务发生时,将事务请求消息存放在事 务队列中。事务队列是一个共享资源需要进行同步控制。事务调度模块根据事务的 优先级进行调度。先执行紧急事务队列的事务,如果紧急事务队列处理完,则执行 实时事务队列的事务。如果实时事务队列处理完,则执行非实时事务队列的事务。 在执行事务的过程中,若有优先级别更高的事务到达,则进行冲突处理,这时被中 止的事务再分配优先数并送入相应的事务队列中,安排重新调度。事务正常结束后, 通过对事务队列的查询,调度当前最高优先的事务对事务中的每一个操作均须根 据操作对象及其操作类型判断锁的状态,从而进行数据库操作,做并发控制处理。 3 3 实时并发控制协议分析 事务的处理不仅要合理地调度,而且要用并发控制协议协调事务操作来保证数 据的一致性和传统数据库一样,实时数据管理系统中的事务并发地运行和存取共 享数据,因此彼此存在着相互干扰。并发控制是控制并发事务间的这种相互作用以 使数据库

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论