面向对象数据库.ppt

  1. 1、本文档共39页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第12章 面向对象数据库 12.1 面向对象数据库概述 12.2 面向对象数据模型 12.3 面向对象数据库管理系统 12.4 对象-关系数据库 12.1 面向对象数据库概述 12.1.1 面向对象数据库的产生背景 12.1.2 面向对象数据库设计思想 12.1.3 面向对象数据库的应用和功能 12.1.4 面向对象数据库的发展前景 12.1.1 面向对象数据库的产生背景 关系数据库有许多优点,但它存在以下局限性:数据模型强调数据的高度结构化,面向机器而不是面向用户;数据类型简单、固定;结构与行为分离,语义表达能力差;将复杂对象分解为多个基本关系来管理,查询实现复杂等等。 随着计算机应用领域的拓广,关系数据库系统已不能满足新的应用领域如计算机辅助设计/制造(CAD/CAM)、计算机辅助软件工程(CASE)、地理信息系统(GIS)、办公自动化系统(OAS)等的需要,这些应用领域面临的共同问题是大型工程复杂数据的管理问题。新一代应用系统提出了以下要求: 12.1.1 面向对象数据库的产生背景 (1)支持复杂的数据类型。新一代应用领域的数据往往是几十种或上百种元素组成的对象,具有许多传统数据库中没有的数据类型,如变长数据、非结构化字符串、图形、图象、声音、动画信息等,这些信息在传统数据库中一般难以描述、操纵和检索。 (2)支持复杂的数据结构。工程设计往往是采用分层的设计方法(自顶向下或自底向上),分层设计不仅要求有层次结构,而且对于不同的设计对象,层次数目也不一样。 (3)对象实例和类的演进。工程设计是一个渐进的过程,特别是在大规模应用中,类是随着环境、需求、研究人员研究的深入而发生变化的,这些变化称为模式演进。 12.1.1 面向对象数据库的产生背景 (4)支持工程事务管理。工程事务的特点表现为长时间、协作性和试探性。传统数据库的并发控制策略无法满足这类事务的要求。 (5)一个复杂对象有许多子对象组成,而这些子对象又有多个版本,这就需要用版本配置来组合成一个合理的复杂对象。持久性对象也同样存在版本的管理问题。 (6)航式查询和关联查询访问。复杂应用中的对象-关系是大型的树状结构,需要系统提供在对象图中的高效导航能力,特别是多媒体对象实时性强,要求更高的交互性能。另一方面,大型应用通过关联查询来访问对象也是必须的。 12.1.1 面向对象数据库的产生背景 (7)支持分布式系统中独立于平台的大型对象的存储。新一代应用领域表现为数据密集,如图形图象等多媒体对象需要占用大量的存储空间,所以系统提供有效的存储和控制手段是十分必要的。 (8)对约束、触发、规则等方面的支持。新一代应用系统的特点是对象的结构和操作非常复杂,有着丰富的语义信息。为了保证数据库的完整性和一致性,引入约束机制是非常必要的。 因此,把先进的面向对象机制和方法与数据库技术相结合而形成新一代的面向对象数据库系统是面向对象技术和数据库技术发展的必然产物。 12.1.2 面向对象数据库设计思想 面向对象数据库的基本设计思想是一方面把面向对象语言向数据库方向扩展,使应用程序能存取并处理对象,另一方面扩展数据库系统,使其具有面向对象的特征,提供一种综合的语义数据建模概念集,以便对现实世界中复杂应用的实体和联系建模。具体的策略或方案有以下几种: (1)建立全新的数据库模型和数据语言。不借助现有任何系统,开发一个全新的面向对象的数据库语言和数据库管理系统。 12.1.2 面向对象数据库设计思想 (2)用对象能力扩充数据库SQL语言。在SQL语言中加入面向对象机制的方法多为关系数据库厂商所采用,目前流行的关系数据库系统如Oracle、Sysbase、Informix等都按这种方式进行了扩充,使其具有一定的面向对象功能。 (3)用数据库能力扩充面向对象程序设计语言(OOPL)。OOPL本身就具有抽象数据类型、继承、封装等特征,扩展仅需加入数据库特征,如持久性、事务管理、查询等。 (4)提供一个可扩充的面向对象的数据库管理系统类库。这些类库包含若干系统类,用于提供事务控制、对象簇聚的方法等。 12.1.2 面向对象数据库设计思想 (5)把面向对象语言结构嵌入到传统的宿主语言中。这类似于把SQL语言嵌入到C、FORTRAN等语言中,用这种方法实现的典型产品是O2 。 (6)为特定的应用领域提供一个底层的面向对象数据库管理。这种方案无法提供一个通用的数据库环境,所以只能针对特定应用领域。 12.1.3 面向对象数据库的应用和功能 1.面向对象数据库的应用 。面向对象数据库的应用主要集中在以下几个方面 : (1)计算机辅助设计/制造(CAD/CAM)

文档评论(0)

kaku + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8124126005000000

1亿VIP精品文档

相关文档