複製鏈接
請複製以下鏈接發送給好友

面向對象數據庫管理系統

鎖定
面向對象數據庫管理系統(OODBMS,object-oriented database management system)是支持將數據當作對象來模擬和創造的一種數據庫管理系統。面向對象數據模型是構成面向對象數據庫結構的基礎,面向對象的數據庫管理系統設計的關健是其新型的數據模型對象即面向對象數據模型,以及數據模型向數據庫結構的轉化。
中文名
面向對象數據庫管理系統
外文名
object-oriented database management system
英文簡稱
OODBMS
數據庫設計
實體-關係模型方法(E-R方法)
開發過程
需求分析和系統設計
所屬領域
計算機科學

面向對象數據庫管理系統簡介

面向對象數據庫管理系統(OODBMS,object-oriented database management system)是支持將數據當作對象來模擬和創造的一種數據庫管理系統。它包括對對象類的支持以及對子類及其對象對類特性和方法的繼承的支持。現在,由什麼組成OODBMS的標準尚未被廣泛認同,並且OODBMS產品被認為尚處於初期。其間,與對象相關的數據庫管理系統(ORDBMS),有種觀念是面向對象數據庫概念可以添加到關係數據庫上,這一觀念在可利用的產品中更為普遍。面向對象數據庫界面標準被產業羣體發展,成為對象數據管理組(ODMG)。對象管理組(OMG)已經被定為網絡中系統之間的面向對象數據的中間界面。

面向對象數據庫管理系統定義

在《面向對象的數據庫聲明》中,Malcolm Atkinson和其他作者對OODBMS的定義如下:
面向對象的數據庫系統必須滿足兩項標準:它必須是一個數據庫管理系統,並且必須是面向對象的系統,例如在儘可能的範圍內它必須與當前的面向對象的程序語言相兼容。第一個標準轉換為五個特徵:持續性、二級存儲管理、同步性、防禦性和一個特定詢問工具。第二個標準轉換為八個特性:複雜的對象、對象一致性、封裝、類型、繼承性、遲約束、可延長性和計算的完全性。

面向對象數據庫管理系統開發階段

數據庫管理系統的開發須經過需求分析和系統設計兩個階段。在完成了需求分析、進入設計階段時,通常要進行數據庫的設計,數據庫設計的好壞直接關係到系統後期的開發。傳統需求分析是用數據流圖,而數據庫的設計是用實體-關係模型方法(E-R方法),需求分析者和數據庫設計者對應用理解很難達成一致。如果在需求分析階段採用面向對象的分析方法,數據庫設計也採用面向對象的設計方法,則需求分析階段的對象模型可以很自然地轉為數據庫的結構。
一個數據庫系統要成為面向對象數據庫系統,必須具備面向對象系統的特徵及其數據庫的特徵,支持核心的面向對象數據模型以及擴充 修改傳統數據庫的語義,使之與核心的面向對象的數據模型取得一致。面向對象數據模型是構成面向對象數據庫結構的基礎,面向對象的數據庫管理系統設計的關健是其新型的數據模型對象即面向對象數據模型,以及數據模型向數據庫結構的轉化。 [1] 

面向對象數據庫管理系統面向對象的數據模型

對象、類及繼承性構成了面向對象數據模型結構特性的基礎,具體有如下的含義:
(1)對象是數據結構和操作的最基本的單位。
(2)每個對象都具有由系統提供的唯一的、可識別的值OID(對象識別符)。
(3)類描述對象共同的類型,用於創建類實例
(4)類與類之間通過繼承而互相聯繫,通過超類與子類關係還可構成類層次結構。
(5)類定義是説明數據庫模式的機制,數據庫模式包含特定應用所定義的全部類,類定義包含了繼承關係和結構關係,其中後者相當於E-R模型
(6)完全的數據庫模式可包含一個或多個類層次及一個或多個結構關係,就某個模式描述則涉及到某些類的實例變量。
(7)類定義可包含系統所定義或用户定義的實例變量,其類型可與類相一致。
需要説明的是,對象數據模型的結構具有很強的開放性和可擴充性,理由是其數據庫模型可通過定義新類而獲得動態擴充,同時可擴充性還指定義或增加新的數據類型的共同的能力,包括在常規的數據庫管理系統中所不能管理的類型,並可通過增加包括表示與操縱非傳統數據類型的結構與操作的新類來實現對非結構化數據的管理。
事實上,面向對象數據模型是對系統進行數據分析時,將欲抽取的事物、概念分解成一個個獨立的、可以區分的事物,再是套上對象之間的關係而構成的,包括領域需求分析和建立模型兩個主要過程,其操作的基礎是消息的傳遞。 [1] 

面向對象數據庫管理系統對象數據模型向數據庫結構的轉換

基於面向對象技術的數據庫系統是由若干個對象和這些對象間的相互作用構成,其中對象由數據和操作兩部分組成,對象具有自主性、封裝性和動態性。將面向對象技術應用到軟件工程的各個階段,其實質就是尋找對象及各對象間的相互作用關係。在需求分析階段,面向對象分析是對真實世界對象建模,其根本出發點是站在應用的角度對問題域進行刻畫和描述,這樣有利於對問題的理解。需求分析階段的結果是:問題陳述+對象模型+動態模型+功能模型。設計階段是對原對象模型進一步描述,此階段可用面向對象方法實現數據庫的設計。基於面向對象技術的數據庫設計中的對象數據模型與數據庫管理系統中的外模式和概念模式相對應,因而可引入外對象模型和概念對象模型。不同權限用户所看到的外對象模型不同,但概念對象模型在全局上是一致的。
對象數據模型與數據庫管理系統中的表之間有着直接映射的關係。將對象數據模型轉化為表結構時,必須考慮完整性約束和範式約束,以反映表之間的聯繫。將對象數據模型映射為表,可用以下幾個步驟來實施:
(1)將單個對象映射為表;
(2)將對象間的二元關聯映射為表;
(3)將對象間的聚集關係映射為表;
(4)將對象間的繼承關係映射為表;
(5)將三元關聯映射為表。 [1] 

面向對象數據庫管理系統面向對象數據庫管理系統的構造

能夠自然地表現複雜數據模型的OOP技術可以提高應用系統的統一性。越來越複雜化的系統期待着高效率、短時間內就可以構造出的環境。比如説,我們需要在短期內構造出某單位的含有圖像和語音處理的人事數據庫管理系統。毫無疑問,採用傳統系統開發方式很難達到這一要求。但是,如果假設有關人事管理的基本數據系統、聲音系統、圖像系統已經存在,那麼可以簡單地在一個窗口上定義這個相對複雜的人事數據庫管理系統。於是面向對象的數據庫管理系統作為不可缺少的系統引起人們的注目。
必須指出,一個OODBMS自身就是一個對象。而它又是由若干個具有完全相對獨立功能的對象以及各對象間的協調關係所構成。一個OODBMS的製作過程可以用圖1簡單地描述。
圖1 圖1
由圖1可以看出,OODBMS的設計與實現其關鍵就在於對象的製作。而對象的製作除了要配備相應的工具和支持環境外,一個最大的問題仍然是從錯綜複雜的數據關係中抽象出對象,並且在作為最小知識單元的基礎上用面向對象的程序設計語言加以實現。 面向對象的編程技術並不是一個新概念。但是,只是在當數據關係變得相當複雜的多媒體時代,在開發週期要求短、説明書變化多的情況下,在處理大量信息的領域裏才充分顯示了它的魅力,並且有着主宰DBMS的開發領域的傾向。但是,一個完備的開發環境包括對作成系統的調試問題,還有待於進一步的研究。 [2] 
參考資料
  • 1.    徐曉丹,賈泂. 基於面向對象技術的數據庫管理系統設計[J]. 計算機與現代化,2002,(07):36-38. [2017-08-02].
  • 2.    葉健. 面向對象的數據庫管理系統的設計[J]. 大連海事大學學報,1996,(02):74-76. [2017-08-02]. DOI:10.16411/j.cnki.issn1006-7736.1996.02.018