CIM与数据库设计 一一采用映射解决关系数据库与面向 对象数据库CIM应用接口问题 作者:王宸5080309901 指导老师:刘东 (上海交通大学电气工程系,上海市200240:) 摘要: 电力系统数字化建设的蓬勃发展致使电力信息化建设“信息孤岛”的问题凸现,各个系 统之间的数据共享程度和集成度都很低,。为解决此问题,国际电工技术委员会(IEC)制定 了IEC61968和IEC61970两个标准,共同定义了一种电力系统通用信息模型CIM。它定义 了电力行业的标准对象模型,提供了一种表示电力系统对象,包括其属性和相互关系的标准。 而在电力系统建模中,同样应用CM,其数据库却有关系型数据库及新近出现的面向对象数 据库两种常见选择。本文将首先对上述两种数据库进行介绍,之后讨论其具体使用利弊。综 合分析后给出较佳的解决方案,即对少数特定场合采用关系型数据库,并在此类情况下附加 一种CIM模型到关系模型的映射以解决数据兼容问题。最终经过模拟,认定此解决方案的确 具有可行性。 关键词:公共信息模型(CIM),关系数据库,面向对象的数据库,映射 1.引言 文献[6]应用实例阐释面向对象数据库 的存取理念更适合IEC61850的设计思想,证明 作者查找了相关的文献,对目前电力系统 纯面向对象的设计,更有利于系统后续模块化 模型及其数据库有了一定的了解,现将所查文开发及高效进行. 献罗列如下: 文献[7]综述了XML数据存储技术的现 文献[1]针对电力企业信息化建设的现状,介绍r基于关系数据库来存储XL数据的几 状,简要叙述了CIM的定义及其特点,对当种方法,详细阐述了各种方法的特点,并对其 前CIM的应用进行了分析概括,介绍了当前各自的优缺点进行了比较. CIM在电力系统不同方面的应用成果,并提出 文献[8]基于SVG的电力系统CIM模型 了CIM的应用研究展望。 数据管理的研究和实现, 文献[2]提出了一种在关系数据库的墓 文献[9]通过将CIM模型映射成一个基于 础上实现面向对象的存储机制,给出了存贮模RDF思想的数据模型,将CIM模型中复杂的拓扑 型。通过标识映射把用户查询模式转换为库中 结构和关系映射组织成几个简单的类,并通过 基于标识的查询,实现了面向对象的数据库查几个简单的关联类组织类间的关系:使用面向 询。 对象的实时数据库FastDB存储此数据模型,从 文献[3]通过实例分析了面向对象数据而避免了CM模型向关系模型映射时实现关系 库在电信网络管理中应用的优势。 (继承、聚合、关联)映射所面临的难点, 文献[4]论述面向对象数据库的基本特 文献[1O]以CIM为原数据模型完成了 征及优劣势,介绍面向对象数据厍的系统结构系统服务器端数据库的建立,同时为了满足系 设计。 统之中实时数据和关系数据之间数据传输的 文献[5]面向对象数据库的主要优点,并需要,开发了实时数据库和关系数据库接口。 对其在现代软件行业中的具体应用进行了分 2.问题的提出 析,对其应用前景进行了展望
CIM 与数据库设计 --采用映射解决关系数据库与面向 对象数据库 CIM 应用接口问题 作者: 王宸 5080309901 指导老师:刘东 (上海交通大学 电气工程系,上海市 200240;) 摘 要: 电力系统数字化建设的蓬勃发展致使电力信息化建设“信息孤岛”的问题凸现,各个系 统之间的数据共享程度和集成度都很低,。为解决此问题,国际电工技术委员会 (IEC) 制定 了 IEC61968 和 IEC61970两个标准,共同定义了一种电力系统通用信息模型 CIM。它定义 了电力行业的标准对象模型,提供了一种表示电力系统对象,包括其属性和相互关系的标准。 而在电力系统建模中,同样应用CIM,其数据库却有关系型数据库及新近出现的面向对象数 据库两种常见选择。本文将首先对上述两种数据库进行介绍,之后讨论其具体使用利弊。综 合分析后给出较佳的解决方案,即对少数特定场合采用关系型数据库,并在此类情况下附加 一种CIM模型到关系模型的映射以解决数据兼容问题。最终经过模拟,认定此解决方案的确 具有可行性。 关键词: 公共信息模型(CIM),关系数据库,面向对象的数据库,映射 1.引言 作者查找了相关的文献,对目前电力系统 模型及其数据库有了一定的了解,现将所查文 献罗列如下: 文献[1] 针对电力企业信息化建设的现 状, 简要叙述了 CIM 的定义及其特点, 对当 前 CIM 的应用进行了分析概括, 介绍了当前 CIM 在电力系统不同方面的应用成果,并提出 了 CIM 的应用研究展望。 文献[2] 提出了一种在关系数据库的墓 础上实现面向对象的存储机制,给出了存贮模 型。通过标识映射把用户查询模式转换为库中 基于标识的查询,实现了面向对象的数据库查 询。 文献[3] 通过实例分析了面向对象数据 库在电信网络管理中应用的优势。 文献[4] 论述面向对象数据库的基本特 征及优劣势,介绍面向对象数据厍的系统结构 设计。 文献[5] 面向对象数据库的主要优点,并 对其在现代软件行业中的具体应用进行了分 析,对其应用前景进行了展望。 文献[6] 应用实例阐释面向对象数据库 的存取理念更适合IEC61850的设计思想,证明 纯面向对象的设计,更有利于系统后续模块化 开发及高效进行. 文献[7] 综述了XML数据存储技术的现 状,介绍r基于关系数据库来存储XML数据的几 种方法,详细阐述了各种方法的特点,并对其 各自的优缺点进行了比较. 文献[8] 基于SVG 的电力系统 CIM 模型 数据管理的研究和实现. 文献[9] 通过将CIM模型映射成一个基于 RDF思想的数据模型,将CIM模型中复杂的拓扑 结构和关系映射组织成几个简单的类,并通过 几个简单的关联类组织类间的关系;使用面向 对象的实时数据库FastDB存储此数据模型,从 而避免了CIM模型向关系模型映射时实现关系 (继承、聚合、关联)映射所面临的难点. 文献[10] 以 CIM 为原数据模型完成了 系统服务器端数据库的建立,同时为了满足系 统之中实时数据和关系数据之间数据传输的 需要,开发了实时数据库和关系数据库接口。 2.问题的提出
随着电力系统数字化建设的蓬勃发展, 验的成功再次证明了CIM的正确性,以及 各电力软件生产厂商都推出了各自基于电 国内对CIM理解的正确性。提出了基 力系统的应用软件,然而由于各生产厂商 IEC61970的新一代调度自动化系统的框架 都是在无规范无标准的情况下自主设计并 构想。 开发自己的产品,导致各个系统之间的数 但是,大家都不可避免地要面临的棘手 据共享程度和集成度都很低,致使电力信 的问题是:CIM模型的面向对象性和目前全 息化建设信息孤岛的问题凸现;甚至自己 世界流行的关系型数据库怎么结合,才能 开发的产品自我扩展性也很差。随着需求的 真正实现CIM模型的通用性和可扩展性, 变化,功能的扩展,以前开发的产品将面 又能使数据的存取效率满足电力生产的要 临大量的浪费。 求。 为此,国际电工委员会(IEC)负责电力 系统控制及其通信的相关标准的第57技术 3.解决问题的方法 委员会(IECTC57)制定了一系列标准,其 要解决应用CIM数据库的选择,及数据 中第13工作组(WG13)负责制定与EMS专 存取接口的问题。就必须将两种数据库相比 业相关的标准系列即IEC61970系列,使 较,找出各自优缺点,之后经过权衡选择最 EMS的应用软件组件化和开放化IEC61970 优方案。 标准最初的草案是接受了美国电科院控制 由于关系型数据库应用非常广泛,并技 中心API(简称EPRI CCAPI)项目的研究果, 术已经比较成熟,故在此不再赘述,下面将 其目标是: 主要介绍面向对象数据库的特点,并将其与 L.在为EMS(Energy Management System) 关系型数据库进行比较。 增加新的应用时尽可能减少费用和时间: 3.1面向对象数据库基本特征及优缺点 2.尽可能的保护以前有效的应用系统的 3.1.1面向对象数据库基本特征 投资; 面向对象数据库模式其实质是类的集 3.为与现存的应用程序接口提供完整的 合。在面向对象的数据模型中提供了一种类 框架。CCAPI工程的任务是制定一套导则和 层次结构。在面向对象数据库模式中,一组 标准,来适应不同的开发商开发的应用程 类可以形成一个类层次。一个面向对象数据 序之间的综合与互操作。 库可能有多个类层次。在一个类层次中,一 自从1996年6月以来,CCAPI工程的研 个类继承其所有超类的全部属性、方法和消 究范围己不仅限于控制中心,扩展了发电、 息。面向对象的数据库系统在逻辑上和物理 输电、配电部分。 上从面向记录上升为面向对象、面向可具有 在标准草案出台后的几年里,各国电力 复杂结构的一个逻辑整体。允许用自然的方 工作者都对此作了大量深入的研究:完成了 法,并结合数据抽象机制在结构和行为上对 基于CIM(Common Information Mo del,公 复杂对象建立模型,从而大幅度提高管理效 共信息模型)/XL(Extensible Markup 率,降低用户使用复杂性。 Language)的数据导入导出的实验验证: 面向对象数据库主要有以下特点:数据 美国分别于2000年12月、2001年5月和 库中的数据是永久保存的。其次是在存储管 2002年6月进行的三次互操作实验(参加 理方面,包括索引管理、数据聚集、数据缓 的单位有ABB、SIMMENS、ESCA、GE、 冲、存取路径选择、查询优化等。三是能够 Harris),验证了CIM模型的正确性和可用 并发控制,提供高于当前己有数据库管理系 性;为了跟上国际对CIM的研究步伐, 统同样级别的、对多个用户并发操作的支 从2002年1月开始,国家电力调度通 持。四是故障恢复能力,提供不低于当前己 信中心进行了两次互操作实验(参加单位 有的数据库管理系统同样级别的、将数据库 有中国电力科学研究院、南京电力自动化研 从故障后的错误状态中恢复到某个正确状 究院、东方电子、清华大学、山东大学),实 态的功能五是交互式查询功能,且是非过
随着电力系统数字化建设的蓬勃发展, 各电力软件生产厂商都推出了各自基于电 力系统的应用软件, 然而由于各生产厂商 都是在无规范无标准的情况下自主设计并 开发自己的产品, 导致各个系统之间的数 据共享程度和集成度都很低, 致使电力信 息化建设信息孤岛 的问题凸现; 甚至自己 开发的产品自我扩展性也很差。随着需求的 变化, 功能的扩展, 以前开发的产品将面 临大量的浪费。 为此, 国际电工委员会( IEC) 负责电力 系统控制及其通信的相关标准的第57 技术 委员会( IECTC 57) 制定了一系列标准, 其 中第13 工作组(WG13) 负责制定与EMS 专 业相关的标准系列即IEC61970 系列, 使 EMS 的应用软件组件化和开放化IEC61970 标准最初的草案是接受了美国电科院控制 中心API( 简称EPRI CCAPI) 项目的研究果, 其目标是: 1.在为EMS ( Energy Management System) 增加新的应用时尽可能减少费用和时间; 2.尽可能的保护以前有效的应用系统的 投资; 3.为与现存的应用程序接口提供完整的 框架。CCAPI 工程的任务是制定一套导则和 标准, 来适应不同的开发商开发的应用程 序之间的综合与互操作。 自从1996 年6 月以来, CCAPI 工程的研 究范围已不仅限于控制中心, 扩展了发电、 输电、配电部分。 在标准草案出台后的几年里, 各国电力 工作者都对此作了大量深入的研究:完成了 基于CIM ( Common Information Mo del, 公 共信息模型) / XML( Extensible Markup Language) 的数据导入导出的实验验证: 美国分别于2000 年12月、2001 年5 月和 2002 年6 月进行的三次互操作实验(参加 的单位有A BB、SIMMENS、ESCA 、GE、 Harris) , 验证了CIM 模型的正确性和可用 性; 为了跟上国际对CIM 的研究步伐, 从2002 年1 月开始, 国家电力调度通 信中心进行了两次互操作实验( 参加单位 有中国电力科学研究院、南京电力自动化研 究院、东方电子、清华大学、山东大学) , 实 验的成功再次证明了CIM 的正确性, 以及 国内对CIM 理解的正确性。提出了基 IEC61970 的新一代调度自动化系统的框架 构想。 但是,大家都不可避免地要面临的棘手 的问题是: CIM 模型的面向对象性和目前全 世界流行的关系型数据库怎么结合, 才能 真正实现CIM 模型的通用性和可扩展性, 又能使数据的存取效率满足电力生产的要 求。 3.解决问题的方法 要解决应用 CIM 数据库的选择,及数据 存取接口的问题。就必须将两种数据库相比 较,找出各自优缺点,之后经过权衡选择最 优方案。 由于关系型数据库应用非常广泛,并技 术已经比较成熟,故在此不再赘述,下面将 主要介绍面向对象数据库的特点,并将其与 关系型数据库进行比较。 3.1 面向对象数据库基本特征及优缺点 3.1.1 面向对象数据库基本特征 面向对象数据库模式其实质是类的集 合。在面向对象的数据模型中提供了一种类 层次结构。在面向对象数据库模式中,一组 类可以形成一个类层次。一个面向对象数据 库可能有多个类层次。在一个类层次中,一 个类继承其所有超类的全部属性、方法和消 息。面向对象的数据库系统在逻辑上和物理 上从面向记录上升为面向对象、面向可具有 复杂结构的一个逻辑整体。允许用自然的方 法,并结合数据抽象机制在结构和行为上对 复杂对象建立模型,从而大幅度提高管理效 率, 降低用户使用复杂性。 面向对象数据库主要有以下特点:数据 库中的数据是永久保存的。其次是在存储管 理方面,包括索引管理、数据聚集、数据缓 冲、存取路径选择、查询优化等。三是能够 并发控制,提供高于当前已有数据库管理系 统同样级别的、对多个用户并发操作的支 持。四是故障恢复能力,提供不低于当前已 有的数据库管理系统同样级别的、将数据库 从故障后的错误状态中恢复到某个正确状 态的功能 五是交互式查询功能,且是非过
程化的、高效的、独1上应用的。 数据越复杂,使用面向对象数据库所带来的 3.1.2面向对象数据库的优点 性能利益就越多,在面向对象数据库中,用 面向对象数据库是个面向对象的系统, 于复杂嵌套结构的聚集和存取技术,能够使 具有支持面向对象数据库模型,支持复杂对 系统性能高于关系数据库,面向对象数据库 象,具有运用各种构造机制从简单对象组成 支持丰富的数据类型构造,对复杂对象(如 复杂对象的能力。复杂对象构造能力加强了 声音,影象,向量,图象)省行推理和存储。 对客观现实世界的模拟能力,且方法自然、 另外,它独立于某个特殊的程序设计语言, 易理解:具有对象标识,对象标识具独立于 以允许不同应用在对象级共享数据。 其值而存在的特性,可以极大地加快查询速 面向对象数据库在数据模型上提供了 度:具有封装性,对象封装了数据,实现了 一个比关系数据模型更为丰富的环境.面向 信息隐藏,使用户不必知道操作的实现细 对象数据模型固有的概括和聚集关系促使 节,只需利用设计者提供的消息即可访问对 人们重新研究那些原本为关系数据库系统 象:具备类型/类、类型层次/类层次能力, 开发的结构概念.这些概念包含模式演化、 因而支持继承性这强有力的建模工具:具有 查询、开发控制、存储结构和索引.面向对 可扩充性等优良特性。 象数据模型正在改善关系数据模型处理复 3.1.3面向对象数据库的缺点 杂数据类型的局限性,使面向对象数据库的 面向对象数据库的主要缺点如下: 逻辑和物理设计更好。 1)技术还不成熟。面向对象数据库技术 在关系数据库中,查询语言仅仅提供数 的根本缺点是这项技术还不成熟。与许多新 据.面向对象数据库管理系统通常提供两种 技术一样,风险在于应用。 方式存取数据,第一种是导航方式,它基于 2)面向对象技术需要一定的训练时问: 对象标识符厂给一个对象标识符,系统能够 有面向对象系统开发经验的公司的专业人 直接存取有关目录;第二种存取方式是基于 员认为,要成功地开发这种系统的关键是正 一个查询语言,同关系数据库管理系统一 规的训练,训练之所以重要是由于面向对象 样,查询选择一系列目录 数据库的开发是从关系数据库和功能分解 附表列出面向对象数据库和关系数据库的 方法转化而来的,人们还需要学习套新的 区别与比较。 开发方法使之与现有技术相结合。此外,面 向对象系统开发的有关原理才刚开始具有 雏形,还需一段时间在可靠性、成本等方 面令人可接受。 3)理论还需完善:从正规的计算机科学 方面看,还需要设计出坚实的演算或理论方 法来支持ODBMS的产品。此外,既存在一套 数据库设计方法学,也没有关于面向对象分 析的套清晰的概念模型,怎样设计独立于物 理存储的信息还不明确。 3.2面向对象数据库与关系数据库的比较 面向对象数据库是在肯定关系数据库 适合一般事务处理的前提下,用其对某些前 面提及的非传统的应用补充不足,两者是相 辅相成的关系.面向对象数据库采用导航计 算公式,使用对象(即现实世界的模型)及其 特性进行设计显得更容易、也更自然.特别 是对于大型复杂系统的应用尤为如此.而且
程化的、高效的、独 l 上应用的。 3.1.2 面向对象数据库的优点 面向对象数据库是个面向对象的系统, 具有支持面向对象数据库模型,支持复杂对 象,具有运用各种构造机制从简单对象组成 复杂对象的能力。复杂对象构造能力加强了 对客观现实世界的模拟能力,且方法自然、 易理解;具有对象标识,对象标识具独立于 其值而存在的特性,可以极大地加快查询速 度;具有封装性,对象封装了数据,实现了 信息隐藏,使用户不必知道操作的实现细 节,只需利用设计者提供的消息即可访问对 象;具备类型/类、类型层次/类层次能力, 因而支持继承性这强有力的建模工具;具有 可扩充性等优良特性。 3.1.3面向对象数据库的缺点 面向对象数据库的主要缺点如下: 1)技术还不成熟。面向对象数据库技术 的根本缺点是这项技术还不成熟。与许多新 技术一样,风险在于应用。 2)面向对象技术需要一定的训练时问: 有面向对象系统开发经验的公司的专业人 员认为,要成功地开发这种系统的关键是正 规的训练,训练之所以重要是由于面向对象 数据库的开发是从关系数据库和功能分解 方法转化而来的,人们还需要学习 套新的 开发方法使之与现有技术相结合。此外,面 向对象系统开发的有关原理才刚开始具有 雏形, 还需一段时间在可靠性、成本等方 面令人可接受。 3)理论还需完善: 从正规的计算机科学 方面看,还需要设计出坚实的演算或理论方 法来支持ODBMS的产品。此外,既存在一套 数据库设计方法学,也没有关于面向对象分 析的套清晰的概念模型,怎样设计独立于物 理存储的信息还不明确。 3.2 面向对象数据库与关系数据库的比较 面向对象数据库是在肯定关系数据库 适合一般事务处理的前提下,用其对某些前 面提及的非传统的应用补充不足,两者是相 辅相成的关系.面向对象数据库采用导航计 算公式,使用对象(即现实世界的模型)及其 特性进行设计显得更容易、也更自然.特别 是对于大型复杂系统的应用尤为如此.而且 数据越复杂,使用面向对象数据库所带来的 性能利益就越多,在面向对象数据库中,用 于复杂嵌套结构的聚集和存取技术,能够使 系统性能高于关系数据库.面向对象数据库 支持丰富的数据类型构造,对复杂对象(如 声音,影象,向量,图象)省行推理和存储. 另外,它独立于某个特殊的程序设计语言, 以允许不同应用在对象级共享数据。 面向对象数据库在数据模型上提供了 一个比关系数据模型更为丰富的环境.面向 对象数据模型固有的概括和聚集关系促使 人们重新研究那些原本为关系数据库系统 开发的结构概念.这些概念包含模式演化、 查询、开发控制、存储结构和索引.面向对 象数据模型正在改善关系数据模型处理复 杂数据类型的局限性,使面向对象数据库的 逻辑和物理设计更好。 在关系数据库中,查询语言仅仅提供数 据.面向对象数据库管理系统通常提供两种 方式存取数据,第一种是导航方式,它基于 对象标识符厂给一个对象标识符,系统能够 直接存取有关目录;第二种存取方式是基于 一个查询语言,同关系数据库管理系统一 样,查询选择一系列目录. 附表列出面向对象数据库和关系数据库的 区别与比较
判断准则 关系型DBMS 对象关系型DBMS 而向对象型DBMS 定义标准 SQL2 S0L3/4 ODMG-V3.0 (ANSI X3H2) (in process) 对面向对象 差,程序员一般花 程序设计的 费25%的时间用于 主要在新的数据 直接的和广泛全面 支特 把程序对象数据 类型上受限制 的支持 肤射到数据库上 表单化的结构易于 非常适合面向对象 易用性 理解,而且有很多 和关系型类似,不 的程序设计,也有与 的工具软件可用 过有一些扩展 SQL类似的访问方 式提供给用户 提供程序和数据 提供程序和数据 易开发性 的完全独立,非常 的完全独立,非常 对象是最自然的模 适合简单的关系 适合简单的关系 型,能适用广泛的 型的应用 型的应用 类型和关系 好,可以处理任何 可扩展性 没有 有限 复杂的或者用户自 定义的数据类型 对复杂数据 可以处理任何复杂 关系的处理 很难处理 难处理 的或者用户自定义 的数据之间的关系 数框库的分 不同的提供商有不 布性、可备份 有广泛的支持 有广泛的支持 同的支持,支持比 性和联合性 较广泛 产品成熟度 非常成熟 不是很成熟 比较成熟 使用群体的 有大量的工其和训 能在很大程度上利 和S0L相适应,但真 优势 练有素的开发人员 用RDBMS的T具 正意图是面向所有 和开发人员 的面向对象开发着 OODBMS的提供商 提供商多半是软 多半是刚刚在市场 软件生态 件业的大公司,有 和RDBMS类似 站稳脚跟,开始和 环境 很多的使用者 RDBMS提失商展 开竟争,但力量还 不强大 提供藏的 生存能力 强大 强大 不强大,很可能会有 起伏 3.3CIM模型与关系模型的一种映射方法 表现现实世界;更符合软件开发的规律, CIM采用了面向对象技术来抽象电力系 缩短开发时间和减少开发费用;大大提高 统的现实世界。通过提供一种对象类和属性 了软件的可重用性、可维护性和可扩充性。 及他们之间的关系来表示电力资源的标准。 然而,目前面向对象的数据库发展还不成 面向对象技术的优点是能更直观、更准确地 熟,而使
3.3CIM 模型与关系模型的一种映射方法 CIM 采用了面向对象技术来抽象电力系 统的现实世界。通过提供一种对象类和属性 及他们之间的关系来表示电力资源的标准。 面向对象技术的优点是能更直观、更准确地 表现现实世界; 更符合软件开发的规律, 缩短开发时间和减少开发费用; 大大提高 了软件的可重用性、可维护性和可扩充性。 然而, 目前面向对象的数据库发展还不成 熟, 而使
用最广泛、技术最成熟的数据库管理系统大 聚合关系是一种特殊的关联关系.聚合 都是关系型的。因此,如何将CIM模型与关 说明了类之间的关系是整体与部分的关系。 系型数据库更好地结合起来,是实现电力 作为自身的一个属性包含进来。在关系库里 软件标准化工作的首要问题。 映射聚合关系的方法是在整体类对应的表 CIM模型的关系较为复杂,如果完全映 里添加“部分”类作为新的域 射成关系数据库的表将会不可避免的生成 3.3.4简单关联 很多关系表来表达复杂的CIM关系,使得 简单关联是类在概念上的一种联系。CIM 数据库表数量增大。如果只是映射CIM的对 里简单关联有3种表现形式。 象,而不管关系的映射,数据库便不能完整 (1)零或一对一(和一对一) 地遵循CIM模型,也就失去了标准的意义。 零或一对一关联映射成数据库的表.只 根据工程经验和实验研究,影响数据库性 需将外键隐藏在零或一对一的“零或一”表 能的一个很重要的因素是数据库中的大表 中。一对一关联,将外键隐藏在一对一的任 (即记录最多表)。这些大表的记录往往是 意一张表中。 与现实相对应实体的实例:而关系表的记 (2)一对多 录是各个对象之间的关系实体,所以数据 一对多映射方法是将外键隐藏在多表 量是比较小的。数据库的管理很大程度上是 中。 对数据库的大表的管理。因此,本文的映射 (3)多对多 方法,是基于这样一条原则:关系的映射 多对多的映射方法是用一个单独的表来 尽可能采用设立外键的方法;另外在不影 实现多对多关联。关联的主键是每个类的主 响数据库性能的情况下,可以考虑建立一 键的合并。 些必要的关系表,确保映射的关系型数据库 完全表达CIM模型的各种关系,以及随 4.总结与体会 IEC61970标准升级的可扩展性。 本文首先介绍了面向对象数据库的特点 3.3.1表示方法 及发展历程和应用现状,与目前广泛应用的 本文采用Rational Rose工具和UML来 关系型数据库进行了比较。并提出数据接口 表达映射过程。Rational Rose用同样的符 问题。 号来表达类和数据库的表。数据库名与类名 之后提出的解决方法是:利用某种映射 相对,域和属性相对。由于CIM模型只规定 将CIM模型完全表达为关系型数据库。这个 了对象的属性,而没有规定方法:数据库 方法的优点是,数据库完全遵循IEC61970 的表也不包含方法,所以,本文隐去了类 标准,开放性直接达到了数据库。缺点也很 符号表达方法的部分。对于没有必要显示属 明显,而且由于CIM里虚类的存在,也会在 性的类,为了方便,本文也隐去了属性, 关系数据库里对应地产生一些虚表,加上关 单用一个矩形来表示。 系表的外键较多,使得程序员对数据库的操 3.3.2泛化 作会比较麻烦,而且效率也较低。为了得到 在映射关系之前,首先将CIM模型中的 完整的数据,可能需要查几张表。 所有类,分别按表名对应类名,域名对应 在本文完成的过程中,我接触了许多之 本身属性(Native Attributes,与继承属 前从未涉及过的知识。这些知识的缺失给我 性(Inherited Attributes)相对应),全 制造了很多困难,也让我看到了自己学习的 部一一映射成数据库表。关系通过外键和专 不足。最终通过文献的阅读,以及同组同学 门的关系表来实现。泛化关系是用来表达一 的帮助,完成本文。这个过程对我今后的学 个相对通用的类和一个相对专门的类之间 习甚至工作都显得尤其珍贵。 的关系。相对专门的类可以继承相对通用的 最后,感谢刘东老师在本学期内讲授的 类的属性,包含更多的信息。 丰富的电力系统知识,并给我们提供了非常 3.3.3聚合 好的教学体验,以及新颖而注重素质的教学
用最广泛、技术最成熟的数据库管理系统大 都是关系型的。因此, 如何将CIM 模型与关 系型数据库更好地结合起来, 是实现电力 软件标准化工作的首要问题。 CIM 模型的关系较为复杂, 如果完全映 射成关系数据库的表将会不可避免的生成 很多关系表来表达复杂的CIM 关系, 使得 数据库表数量增大。如果只是映射CIM 的对 象, 而不管关系的映射,数据库便不能完整 地遵循CIM 模型, 也就失去了标准的意义。 根据工程经验和实验研究, 影响数据库性 能的一个很重要的因素是数据库中的大表 ( 即记录最多表) 。这些大表的记录往往是 与现实相对应实体的实例; 而关系表的记 录是各个对象之间的关系实体, 所以数据 量是比较小的。数据库的管理很大程度上是 对数据库的大表的管理。因此, 本文的映射 方法, 是基于这样一条原则: 关系的映射 尽可能采用设立外键的方法; 另外在不影 响数据库性能的情况下, 可以考虑建立一 些必要的关系表,确保映射的关系型数据库 完全表达CIM 模型的各种关系, 以及随 IEC61970 标准升级的可扩展性。 3.3.1表示方法 本文采用Rational Rose 工具和UML 来 表达映射过程。Rational Rose 用同样的符 号来表达类和数据库的表。数据库名与类名 相对, 域和属性相对。由于CIM 模型只规定 了对象的属性, 而没有规定方法; 数据库 的表也不包含方法, 所以, 本文隐去了类 符号表达方法的部分。对于没有必要显示属 性的类, 为了方便, 本文也隐去了属性, 单用一个矩形来表示。 3.3.2泛化 在映射关系之前, 首先将CIM 模型中的 所有类, 分别按表名对应类名, 域名对应 本身属性( Native Attributes, 与继承属 性( Inherited Attributes ) 相对应) , 全 部一一映射成数据库表。关系通过外键和专 门的关系表来实现。泛化关系是用来表达一 个相对通用的类和一个相对专门的类之间 的关系。相对专门的类可以继承相对通用的 类的属性, 包含更多的信息。 3.3.3聚合 聚合关系是一种特殊的关联关系, 聚合 说明了类之间的关系是整体与部分的关系。 作为自身的一个属性包含进来。在关系库里 映射聚合关系的方法是在整体类对应的表 里添加“部分”类作为新的域 3.3.4简单关联 简单关联是类在概念上的一种联系。CIM 里简单关联有3种表现形式。 (1)零或一对一( 和一对一) 零或一对一关联映射成数据库的表, 只 需将外键隐藏在零或一对一的“零或一”表 中。一对一关联,将外键隐藏在一对一的任 意一张表中。 (2)一对多 一对多映射方法是将外键隐藏在多表 中。 (3)多对多 多对多的映射方法是用一个单独的表来 实现多对多关联。关联的主键是每个类的主 键的合并。 4.总结与体会 本文首先介绍了面向对象数据库的特点 及发展历程和应用现状,与目前广泛应用的 关系型数据库进行了比较。并提出数据接口 问题。 之后提出的解决方法是: 利用某种映射 将CIM 模型完全表达为关系型数据库。这个 方法的优点是,数据库完全遵循IEC61970 标准,开放性直接达到了数据库。缺点也很 明显,而且由于CIM 里虚类的存在,也会在 关系数据库里对应地产生一些虚表,加上关 系表的外键较多,使得程序员对数据库的操 作会比较麻烦, 而且效率也较低。为了得到 完整的数据, 可能需要查几张表。 在本文完成的过程中,我接触了许多之 前从未涉及过的知识。这些知识的缺失给我 制造了很多困难,也让我看到了自己学习的 不足。最终通过文献的阅读,以及同组同学 的帮助,完成本文。这个过程对我今后的学 习甚至工作都显得尤其珍贵。 最后,感谢刘东老师在本学期内讲授的 丰富的电力系统知识,并给我们提供了非常 好的教学体验,以及新颖而注重素质的教学
方法!并感谢在本文成文过程中帮助过我的库的应用研究,微型机与应 同学们! 用,2002,(11),4-6. 参考文献: [6]魏杰,陈奇志,潘虹,面向对象数据 [1]刘冬,杨丽徙,张雅,李强.通用信息库的1E061850模型数据存储研究.电力系统 模型在电力信息化建设中的应用[J].《微计保护与控制.2009,(21),67-70叭89 算机信息》(管控一体化)2007,(23卷第11-3 [7]冯春辉.基于关系数据库的XL映射 期). 机制研究.煤炭技术,2010,(12),136-137. [2]方敏,金益民,陈平.一个基于关系 [8]严增锐.基于SVG的电力系统CIM 数据库的面向对象的关系数据库(OODB) 模型数据管理的研究和实现. [3]刘光远.面向对象数据库在电信网 [9]林昌暖,吴健.基于RDF的CIM数据存 络管理中的应用研究, 储方案研究与实现.科学技术与工 [4]张婧.面向对象数据库探析.文章程,2007,(24),6339-6342 编码:1671一7597(2011)0310001-01. [10]杨萌.基于CIM模型企业电网分析 [5]叶林,石冰心,陈琼.面向对象数据平台数据库及数据接口研究
方法!并感谢在本文成文过程中帮助过我的 同学们! 参考文献: [1] 刘冬,杨丽徙,张雅,李强. 通用信息 模型在电力信息化建设中的应用[J]. 《微计 算机信息》(管控一体化)2007,(23卷第11-3 期). [2] 方敏,金益民,陈平. 一个基于关系 数据库的面向对象的关系数据库(OORDB) [3] 刘光远. 面向对象数据库在电信网 络管理中的应用研究. [4] 张婧. 面向对象数据库探析. 文章 编码:1671—7597(2011)031 0001-01. [5] 叶林,石冰心,陈琼. 面向对象数据 库 的 应 用 研 究 . 微 型 机 与 应 用,2002,(11),4-6. [6] 魏杰,陈奇志,潘虹. 面向对象数据 库的l EO61 850模型数据存储研究.电力系统 保护与控制.2009,(21),67-70\89. [7] 冯春辉. 基于关系数据库的XML映射 机制研究.煤炭技术,2010,(12),136-137. [8] 严增锐. 基于 SVG 的电力系统 CIM 模型数据管理的研究和实现. [9] 林昌暖,吴健. 基于RDF的CIM数据存 储 方 案 研 究 与 实 现 . 科 学 技 术 与 工 程,2007,(24),6339-6342. [10] 杨萌. 基于CIM模型企业电网分析 平台数据库及数据接口研究