面向对象的数据库管理系统

更新时间:2023-07-24 07:40:01 阅读量: 实用文档 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

本文对面向对象数据库管理系统发展现状作出综合评述。介绍现行实现技术的四种主要 研究方法.着重介绍目前最具代表性的两种方法,并对面向对象技术和数据库技术结合的进展情 况及其前景展望进行丁探讨

面向对象的数据库管理系统

许威

李茂青

厦门大学自动化系.厦门.361005

摘要本文对面向对象数据库管理系统发展现状作出综合评述。介绍现行实现技术的四种主要研究方法.着重介绍目前最具代表性的两种方法,并对面向对象技术和数据库技术结合的进展情况及其前景展望进行丁探讨。

关键词面向对象,数据库,数据库管理系统

1引言

今天,随着数据库应用领域的扩大,CAD、CAM、CASE、图像处理、超文本应用等新的应用领域提出新的数据库管理需求,要求模拟复杂对象、模拟复杂对象的行为。关系型数据库管理系统很难适应这些新的需求,从而推动了将面向对象技术和数据库技术相结合.研究新型的数据库管理系统。

2面向对象数据库管理系统的实现技术

当面向对象技术刚刚引入到数据库领域时,数据库界兴奋而又困惑,对于什么是面向对象的数据库方法.不同的人有不同的理解;对于如何将面向对象的技术结合到数据库中,不同的研究组探索不同的方法。当前至少有四种方法可以把面向对象的能力结合在数据库中。

(1)扩展现成的关系数据库具有的面向对象的能力

这是一种以传统的关系数据库语言为基础进行演化的方法。由于SQL已经是一个标准的通用的数据库语言,最好的方法就是扩展SQL使其具有面向对象的结构,反映基于数据库管理系统的面向对象的能力。SQL正被关系数据库厂商和面向数据库厂商扩展到具有面向对象的能力。例如ORACAL、INFORMIX这些RDBMS厂商正将面向对象能力结合副其产品中。该方法允许将关系数据库系统的类型系统开放,允许新的、用户定义的抽象数据类型加(ADT)进来。用户定义新的ADT需要实现这个类型,即定义它的表示法和书写它的函数,然后这个新的类型就登记到新的数据库系统中,就可以像内部构造的类型一样被使用。加州大学BERKERLEY分校的POSTGRES系统就是这种方法的典型代表。POSTGRES系统是在IN—GRES系统上的进一步工作,它的目的之一是提供对复杂对象的存储和查询,它采取一种“将过程作为数据类型”的方法,并用了预先计算和查询改写的技术来减轻这一过程为中 rE,方法所带来的开销。

(2)扩展现有面向对象程序设计语言具有数据库功能

这种方法是把数据库功能(如查询、事务处理和持久性等)引入到现有的面向对象程序设

15

本文对面向对象数据库管理系统发展现状作出综合评述。介绍现行实现技术的四种主要 研究方法.着重介绍目前最具代表性的两种方法,并对面向对象技术和数据库技术结合的进展情 况及其前景展望进行丁探讨

计语言中。而面向对象程序设计语言中已具有面向对象的功能.如抽象数据类型、继承性和对象标识。面向对象数据库功能已引入c++和SMALLTALK语言的类型系统和编程模式,并扩展其中具有数据库管理的类和基本元素。例如OBJECTSTORE对c++语言进行扩展使之具有永久的数据库操纵功能。

(3)面向对象的数据库系统

将面向对象的能力结合到数据库中的最具竞争力的方法就是开发~个全新的数据库语言和肄有面向对象功能的数据库管理系统。在面向对象数据库中大多研究项目已追求这种方法。它将数据库系统的特性与面向对象程序设计语言的特性结合起来.产生面向对象的数据库系统f,OOOB)。但是至今关于OOOB的数据模型、查询方式、查询语言等都没有统一的定义,因而000B所涉及的问题包括多方面:数据模型、查询语言、索引技术、查询优化和处理技术等。其大体功能如下:

(4)数据库系统工具包

这种方法是针对应用领域开发专用的工具和环境,对应用领域使JgNNx,寸象的数据库技术或为应用领域提供一个面向对象的数据库界面。专用产品不提供通用的面向对象环境,而仅仅提供对专用领域有用的面向对象功能和结构。

3面向对象技术与数据库结合技术的进展

在上面谈到的几种实现面向对象数据库的方法中,目前最普遍用到的是两种方法:(1)面向对象的数据库系统,(2)扩充关系数据库系统具有面向对象能力。

前者在许多方面的研究都取得一定成果,包括基本对象模型.对复杂对象的支持、模式演变、面向对象的查询语言和查询处理机制,面向对象的索引机制等。一些公司已推出若干个000B产品,例如Gemstone,Objectstore,Ontos,Versant等。下面对这些系统提供的各种功能进行比较:

16

本文对面向对象数据库管理系统发展现状作出综合评述。介绍现行实现技术的四种主要 研究方法.着重介绍目前最具代表性的两种方法,并对面向对象技术和数据库技术结合的进展情 况及其前景展望进行丁探讨

功能操作平台用户支持多继承性动态模式演变保密与授权组合对象能力多媒体支持存储管理查询管理图形用户接口外邵语言接口

Gemstone

98058l199L0

10(Sma|Italk

Ontos98841221098

Objectstore

Versant

981033221075

102242986

9(C十+)9(C4-4-)5(C)

9(C+4-)

7(C)

5(c+-4-)6(C)

然而,OOOB的商品化现状显然比以前预期的要差很多,其原因是多方面的。首先,OOOB缺乏标准,尽管已推出一个标准草案ODMG一93,但许多厂商只是部分地遵从它。其次,000B产品在完整性、坚固性、可伸缩性等许多方面都不如RDB产品。另外,OODB系统的应用开发工具很少,对Client--Server计算环境的支持也不够。以上多种原因使许多预期的用户,例如CAD厂商没有很快地转向OODB系统。

后者吸收了面向对象数据库方法的许多长处,是目前发展颇为成熟的一种,且具有一个新名词:对象~关系数据库(ORDB)。ORDB从关系模型和SQL出发,并以此为基础建立。就面向对象的特性而言,当前的产品提供对两类对象的支持--ADT和组合类型。ADT(Abstract

Dam

Tools)作用是在DBMS内部构造的基类的基础上扩充正文、图象、声音,时间序列等新的

数据类型,于是新的应用需求(例如人事档案中包括简历和照片)就能得到满足。组合类型是对元组的类型系统直接的和自然的扩充.它使得表中的行类似于对象的特性,例如命名的类型、函数/方法等。OODB是建立在关系数据库基础上,较容易为原来的客户群接受,现在,已有几家厂商推出了具有OODB特征的产品,如IBM的DB2/V2.0和CA—lngres系统支持用户定义的基类、函数和继承等。

4面向对象技术与数据库技术结合前景的展望

若干年后向用户提供的应该是高度集成的、客户朋&务器结构的、对象一关系数据库系统。届时ORDB技术将会成熟,能够提供面向对象的ADT的全面支持,包括ADT问的继承和在多种程序设计浯言上实现ADT的能力。还将提供对于组合类型的完全面向对象类型的支持,以及与此相关的扩充SQL功能,包括面向对象的视图、授权、触发器、完整性约束等。服务器会和客户前端相结合,以提供一种开发环境,使得各个层次能够采用相同的对象模型来对数据库进行描述,既支持查询请求,也支持导航式的程序设计。方法和查询既可在客户端存的数据上运行.也可在服务器上运行,触发器和其他类型的约束也是这样。

(下转第199页)

17

本文对面向对象数据库管理系统发展现状作出综合评述。介绍现行实现技术的四种主要 研究方法.着重介绍目前最具代表性的两种方法,并对面向对象技术和数据库技术结合的进展情 况及其前景展望进行丁探讨

面向对象的数据库管理系统

作者:作者单位:

许威, 李茂青大学自动化系

本文链接:/Conference_212133.aspx

本文来源:https://www.bwwdw.com/article/jrkm.html

Top