時間:2022-11-02 14:30:01 | 來源:信息時代
時間:2022-11-02 14:30:01 來源:信息時代
面向對象數據庫系統(tǒng) : 為了管理復雜數據,通過面向對象技術和數據庫技術結合而產生的新一代數據庫管理系統(tǒng)。它滿足兩個準則: 首先它是一個數據庫管理系統(tǒng),具備存儲管理、查詢處理、事務處理等基本功能; 其次是一個面向對象系統(tǒng),可以看成是由一種面向對象程序設計語言創(chuàng)建的對象的永久存儲,支持面向對象計算模型。
對象數據管理小組(object data management group,ODMG)是著名的對象管理小組(object management group,OMG)成員之一,它成立于1991年,并于1993年發(fā)布第一版對象數據標準ODMG1.0。1999年發(fā)布的第三版ODMG3.0已經被廣泛認可為一個比較成熟的關于面向對象數據庫系統(tǒng)的標準。它主要規(guī)范和引導面向對象數據庫市場,以解決由于缺少標準而造成各種面向對象數據庫產品間缺乏可移植性的問題,保護用戶和廠商雙方利益。ODMG標準把面向對象數據庫系統(tǒng)定義為數據庫與面向對象語言的結合,它主要由以下四個部分組成:
(1)對象模型:它從OMG對象模型繼承演化而來,主要定義了對象的特性、對象間的關系(繼承)等。
(2) 對象描述語言: 它包括對象定義語言(object definition language,ODL)和對象交互格式(object interchange format,OIF)。對象定義語言主要定義對象數據類型。而對象交互格式主要用于以文件形式存儲對象數據類型及其實例,實現面向對象數據庫可移植性。
(3)對象查詢語言: ODMG定義了非過程型的對象查詢語言(object query language,OQL),用于查詢數據庫對象。ODMG遵循SQL標準,但在其上又增加了對象的功能。但是ODMG的OQL不包括SQL的UPDATE等數據操縱語句,對象操縱語言(object manipulation language,OML)功能由語言綁定完成。
(4) 對象語言綁定: ODMG3.0綁定了C++,Smalltalk和Java三種語言。語言綁定主要是實現ODL和ODMG缺乏的OML。同時利用這些語言的靈活性可以方便對ODMG實現擴展。
在關系數據庫系統(tǒng)中,視圖是一種非常有用的機制,視圖簡化了用戶對數據庫概念模式的了解,使用戶對數據庫的擴充或重構都不敏感,而且對隱藏的數據可以自動提供安全保護。面向對象數據庫將數據和操作封閉成對象,對象具有自己獨自唯一的標識符,不能進行分割和重組,以至于對象視圖難以實現。面向對象數據庫20世紀90年代初期曾一度挑戰(zhàn)關系數據庫,但由于面向對象數據庫柔軟性差、成熟度低、復雜難用,盡管開發(fā)出許多商用化面向對象數據庫產品,但最終沒有被市場廣泛接受。
針對面向對象數據庫的問題,國際著名數據庫專家Stonebraker教授在20世紀90年代提出了對象關系數據庫,它被稱為關系數據庫和對象數據庫的結合。為了說明對象關系數據庫的地位和作用,他給出了矩陣圖1。
圖1 對象關系數據庫系統(tǒng)地位與作用