登錄

異構數(shù)據庫

百科 > 信息管理系統(tǒng) > 異構數(shù)據庫

1.什么是異構數(shù)據庫

  異構數(shù)據庫系統(tǒng)相關的多個數(shù)據庫系統(tǒng)的集合,可以實現(xiàn)數(shù)據的共享和透明訪問,每個數(shù)據庫系統(tǒng)在加入異構數(shù)據庫系統(tǒng)之前本身就已經存在,擁有自己的DMBS。異構數(shù)據庫的各個組成部分具有自身的自治性,實現(xiàn)數(shù)據共享的同時,每個數(shù)據庫系統(tǒng)仍保有自己的應用特性、完整性控制和安全性控制。

2.異構數(shù)據庫的異構性

  計算機體系結構的異構:各個參與的數(shù)據庫可以分別運行在大型機、小型機、工作站、PC嵌入式系統(tǒng)中。

  基礎操作系統(tǒng)的異構:各個數(shù)據庫系統(tǒng)的基礎操作系統(tǒng)可以是Unix、Windows NT、 Linux等。

  關系型數(shù)據庫系統(tǒng)的Oracle、 SQL Server等,也可以是不同數(shù)據模型數(shù)據庫,如關系、模式、層次、網絡、面向對象,函數(shù)型數(shù)據庫共同組成一個異構數(shù)據庫系統(tǒng)。

  異構數(shù)據庫系統(tǒng)的目標在于實現(xiàn)不同數(shù)據庫之間的數(shù)據信息資源、硬件設備資源和人力資源合并和共享。其中關鍵的一點就是以局部數(shù)據庫模式為基礎,建立全局的數(shù)據模式或全局外視圖。這種全局模式對于建立高級的決策支持系統(tǒng)尤為重要。

  大型機構在許多地點都有分支機構,每個子機構的數(shù)據庫中都有著自己的信息數(shù)據,而決策制訂人員一般只關心宏觀的、為全局模式所描述的信息。建立在數(shù)據倉庫技術基礎上的異構數(shù)據庫全局模式的描述是一種好的解決方案。數(shù)據倉庫可以從異構數(shù)據庫系統(tǒng)中的多個數(shù)據庫中收集信息,并建立統(tǒng)一的全局模式,同時收集的數(shù)據還支持對歷史數(shù)據的訪問,用戶通過數(shù)據倉庫提供的統(tǒng)一的數(shù)據接口進行決策支持的查詢。

3.異構數(shù)據庫的結構及共享

  對于異構數(shù)據庫系統(tǒng),實現(xiàn)數(shù)據共享應當達到兩點:一是實現(xiàn)數(shù)據庫轉換;二是實現(xiàn)數(shù)據的透明訪問。

  數(shù)據庫系統(tǒng)之間的數(shù)據定義模型不同,如分別為關系模型層次模型,那么需要重新定義實體屬性和聯(lián)系,以防止屬性或聯(lián)系信息的丟失。

  總之,在進行數(shù)據轉換后,一方面源數(shù)據庫模式中所有需要共享的信息都轉換到目的數(shù)據庫中,另一方面這種轉換又不能包含冗余的關聯(lián)信息。

  數(shù)據庫轉換工具可以實現(xiàn)不同數(shù)據庫系統(tǒng)之間的數(shù)據模型轉換,需要進一步研究的問題是:如果數(shù)據庫轉換同時進行數(shù)據定義模式轉換和數(shù)據轉換,就可能引起同一數(shù)據集合在異構數(shù)據庫系統(tǒng)中存在多個副本,因此需要引入新的訪問控制機制。在保證各個參與數(shù)據庫自治,維護其完整性、安全性的基礎上,對于異構數(shù)據庫系統(tǒng)提供全局的訪問控制、并發(fā)機制和安全控制。

  如果數(shù)據庫轉換只進行數(shù)據定義轉換,不產生數(shù)據的副本,那么在新的目的數(shù)據庫定義模型的框架下訪問數(shù)據,實現(xiàn)上仍是對源數(shù)據庫系統(tǒng)中數(shù)據的訪問。這時利用新的數(shù)據庫系統(tǒng)中的數(shù)據處理語言實現(xiàn)的事務,不能直接訪問源數(shù)據庫,必須進行事務級的翻譯才可以執(zhí)行。

  分布式數(shù)據庫系統(tǒng)看成普通的分布式數(shù)據庫系統(tǒng),用自己熟悉的數(shù)據處理語言去訪問數(shù)據庫,如同訪問一個數(shù)據庫系統(tǒng)一樣。但目前還沒有一種廣泛使用的數(shù)據定義模型和數(shù)據查詢語言,實現(xiàn)數(shù)據的透明訪問可以采用多對一轉換、雙向的中間件技術。開放式數(shù)據庫互連(Open DataBase Connectivity,簡稱ODBC)是一種用來在相關或不相關數(shù)據庫管理系統(tǒng)中存取數(shù)據的標準應用程序接口(API)。ODBC為應用程序提供了一套高層調用接口規(guī)范和基于動態(tài)鏈接庫的運行支持環(huán)境。目前,常用的數(shù)據庫應用開發(fā)的前端工具如Power Builder、 Delphi等都通過開放數(shù)據庫互聯(lián)(ODBC)接口來連接各種數(shù)據庫系統(tǒng)。而多數(shù)數(shù)據庫管理系統(tǒng)(如:Oracle、Sybase、SQL Server等)都提供了相應的ODBC驅動程序,使數(shù)據庫系統(tǒng)具有很好的開放性。ODBC接口的最大優(yōu)點是其互操作能力,理想情況下,每個驅動程序和數(shù)據源應支持完全相同的ODBC函數(shù)調用和SQL語句,使得ODBC應用程序可以操作所有的數(shù)據庫系統(tǒng)。然而,實際上不同的數(shù)據庫對SQL語法的支持程度各不相同,因此,ODBC規(guī)范定義了驅動程序的一致性級別,ODBC API的一致性確定了應用程序所能調用的ODBC函數(shù)種類,ODBC 2.0規(guī)定了三個級別的函數(shù),目前 DM3 ODBC API支持 ODBC 2.0規(guī)范中第二級擴展的所有函數(shù)。

  面向對象等優(yōu)點而成為Internet應用開發(fā)的首選語言。在Internet環(huán)境下,實現(xiàn)基于異種系統(tǒng)平臺的數(shù)據庫應用,必須提供一個獨立于特定數(shù)據庫管理系統(tǒng)的統(tǒng)一編程界面和一個基于 SQL的通用的數(shù)據庫訪問方法。Java與數(shù)據庫接口規(guī)范JDBC(Java Database Connectivity)是支持基本SQL功能的一個通用的應用程序編程接口,它在不同的數(shù)據庫功能模塊的層次上提供了一個統(tǒng)一的用戶界面,為對異構數(shù)據庫進行直接的Web訪問提供了新的解決方案。 JDBC已被越來越多的數(shù)據庫廠商、連接廠商、Internet服務廠商及應用程序編制者所支持。

評論  |   0條評論