oracle访问远程db2,如何在DB2与Oracle之间实现远程拷贝(二)
聯合數據庫具有兩個與其他應用服務器不同的特點:
聯合服務器可以被配置為接收全部或接收部分針對數據源的請求。聯合服務器把這些請求分散到數據源。
與其他應用服務器一樣,一個聯合服務器用 DRDA 通信協議(例如 SNA 和 TCP/IP)與 DB2 家族實例通信。然而,與其他應用服務器不同的是,與非 DB2 家族實例通信時用其他協議。
圖2描述了聯合數據庫系統的設置流程:
WebSphere II 包括兩種包裝器(Wrapper),一種為關系型包裝器,負責DB2 UDB, Informix, Oracle, Microsoft SQL Server, Sybase, ODBC, OLE DB 等數據的復制。另一種為非關系型包裝器,負責 Flatfile, Excel, XML 等非關系型數據的復制。
包裝器定義了一個負責本地數據庫與遠程數據庫通信的庫。包裝器執行很多任務,比如:它可以連接到數據源,包裝器應用了數據源的標準連接API。它還可以給數據源提交請求。聯合數據庫系統可以操作遠程聯合系統的表。遠程表在本地聯合數據庫中虛擬存在,客戶應用程序可以操作這些虛擬表,但是它們真正存在于遠端數據庫中。每個遠程虛擬數據庫,把聯合數據庫當作數據庫客戶端,他們只對數據庫客戶端的請求有回應。因此聯合數據庫需要下載各種遠程數據庫的客戶端。
一個聯合系統的構造,需要一個作為聯合服務器的 DB2 實例,一個作為聯合數據庫的數據庫,一個或多個數據源,和可以存取數據庫和數據源的客戶(用戶和應用)。如果要完成遠程不同數據庫之間的復制,還需要應用DB2的數據復制功能。
IBM DB2 復制(在一些平臺上被稱為數據傳播)是一個從一個位置到另一個位置復制 DB2 和/或其他數據庫廠商數據的強大的,靈活的工具。IBM的復制支持數據轉換,數據連接和過濾數據??梢栽诓煌钠脚_之間搬運數據,也可以把數據分散到不同的地點或從分散的地方把數據聚合到一個地方??梢栽诓煌南到y之間交換數據。
IBM復制由四個主要部分組成:管理 (Administrator),Capture,Apply,警報監視器 (Alert Monitor)。
管理的部分主要通過復制中心的圖形界面來實現。通過復制中心可以定義復制源,定義從數據源到目標數據的地圖。它也用來管理和監控本地和遠程的 Capture 和 Apply 進程。從圖3中可以看出復制中心圖形界面對其他幾個部分的支持關系。
在源數據服務器上運行的 Capture 程序可以獲取 DB2 源數據表中的變化。DB2 的源數據服務器可以為 DB2 在 z/os, os/390 上的版本 6,7和8,也可以是 iseries 在 os/400 V5R2,或 DB2 在 Windows, Unix 系統中的版本 8。當定義數據源的時候會自動生成相應的觸發器 (Triggers),可以用來捕獲數據源的變化。要復制的數據可以在 Capture 進程中通過選擇列來進行過濾。被捕獲的更改信息首先存放到本地的源數據所在的數據庫的表中并且當更改應用到目標數據中之后會自動刪除。
當對源表進行改動時,DB2 把相關的記錄寫入日志。這些日志服務于數據庫發現和復制。Capture 程序通過數據庫自動連接并獲取日志記錄。每個源表都有相應的 CD (change data) 表來獲取數據的變化。當定義一個復制數據源時,復制中心自動生成 CD 表。
對于 Apply 部分,捕獲的改變通過 Apply 程序應用到目標表中。Apply 程序可以在任何服務器上運行并且必須對所用到的源服務器和目標服務器都有連通性。數據可以通過列,行進行過濾,可以進行合并(例如通過視圖),也可以在 Apply 過程中通過 SQL 表達式進行傳送。DB2 與其他相關的數據間進行復制的時候,必須通過聯合數據庫系統來進行昵稱的創建。在本地機器上需要安裝關系型包裝器和非關系型包裝器。對于本例中db2ORACLE之間的復制,需要安裝關系型包裝器。見圖4。
報警監視器用來進行對Capture和Apply部分的錯誤監控。
標簽:
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,尊重他人勞動成果
文章轉載自:網絡轉載
總結
以上是生活随笔為你收集整理的oracle访问远程db2,如何在DB2与Oracle之间实现远程拷贝(二)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: oracle语句怎么倒退,oracle
- 下一篇: php websocket 心跳包,we