Oracle Golden Gate - 概念和機制

Oracle Golden Gate - 概念和機制 (ogg)
Golden Gate(簡稱OGG)提供異構環境下交易數據的實時捕捉、變換、投遞。
Oracle Golden Gate - 概念和機制

OGG支持的異構環境有:
Oracle Golden Gate - 概念和機制

OGG的特性:
對生產系統影響小:實時讀取交易日誌,以低資源佔用實現大交易量數據實時複製,以交易爲單位複製。

保證交易一致性:
只同步已提交的數據

高性能:
智能的交易重組和操作合併
使用數據庫本地接口訪問
並行處理體系

靈活的拓撲結構:
支持一對一、一對多、多對一、多對多和雙向複製等
支持數據過濾和轉換
可以自定義基於表和行的過濾規則.
可以對實時數據執行靈活影射和變換.

提供數據壓縮和加密:
降低傳輸所需帶寬,提高傳輸安全性.

OGG的工作原理:
Oracle Golden Gate - 概念和機制

OGG的進程:

Manager進程是GoldenGate的控制進程,運行在源端和目標端上。它主要作用有以下幾個方面:啓動、監控、重啓Goldengate的其他進程,報告錯誤及事件,分配數據存儲空間,發佈閥值報告等。在目標端和源端有且只有一個manager進程

Extract運行在數據庫源端,負責從源端數據表或者日誌中捕獲數據。
Extract的作用可以按照階段來劃分爲:
一初始時間裝載階段:在初始數據裝載階段,Extract進程直接從源端的數據表中抽取數據
二同步變化捕獲階段:初始數據同步完成以後,Extract進程負責捕獲源端數據的變化(DML和DDL)

Data Pump進程運行在數據庫源端,其作用是將源端產生的本地trail文件,把trail以數據塊的形式通過TCP/IP 協議發送到目標端,這通常也是推薦的方式。pump進程本質是extract進程的一種特殊形式,如果不使用trail文件,那麼extract進程在抽取完數據以後,直接投遞到目標端,生成遠程trail文件。

Collector進程與Data Pump進程對應的叫Server Collector進程,這個進程不需要引起我的關注,因爲在實際操作過程中,無需我們對其進行任何配置,所以對我們來說它是透明的。它運行在目標端,其任務就是把Extract/Pump投遞過來的數據重新組裝成遠程trail文件。

Replicat進程,通常我們也把它叫做應用進程。運行在目標端,是數據傳遞的最後一站,負責讀取目標端trail文件中的內容,並將其解析爲DML或DDL語句,然後應用到目標數據庫中。

關於OGG的Trail文件:
爲了更有效、更安全的把數據庫事務信息從源端投遞到目標端。GoldenGate引進trail文件的概念。前面提到extract抽取完數據以後Goldengate會將抽取的事務信息轉化爲一種GoldenGate專有格式的文件。然後pump負責把源端的trail文件投遞到目標端,所以源、 目標兩端都會存在這種文件。

trail文件存在的目的旨在防止單點故障,將事務信息持久化,並且使用checkpoint機制來記錄其讀寫位置,如果故障發生,則數據可以根據checkpoint記錄的位置來重傳 。

Oracle Golden Gate軟件是一種基於日誌的結構化數據複製備份軟件,它通過解析源數據庫在線日誌或歸檔日誌獲得數據的增量變化,再將這些變化應用到目標數據庫,從而實現源數據庫與目標數據庫同步。Oracle Golden Gate可以在異構的IT基礎結構(包括幾乎所有常用操作系統平臺和數據庫平臺)之間實現大量數據亞秒一級的實時複製,從而在可以在應急系統、在線報表、實時數據倉庫供應、交易跟蹤、數據同步、集中/分發、容災、數據庫升級和移植、雙業務中心等多個場景下應用。同時,Oracle Golden Gate可以實現一對一、廣播(一對多)、聚合(多對一)、雙向、點對點、級聯等多種靈活的拓撲結構。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章