Oracle Golden Gate - 概念和機制 (ogg)


Golden Gate(簡稱OGG)提供異構環境下交易數據的實時捕捉、變換、投遞。


OGG支持的異構環境有:


OGG的特性:

  • 對生產系統影響小:實時讀取交易日志,以低資源占用實現大交易量數據實時復制
  • 以交易為單位復制,保證交易一致性:只同步已提交的數據
  • 高性能
    • 智能的交易重組和操作合並
    • 使用數據庫本地接口訪問
    • 並行處理體系
  • 靈活的拓撲結構:支持一對一、一對多、多對一、多對多和雙向復制等
  • 支持數據過濾和轉換
    • 可以自定義基於表和行的過濾規則.
    • 可以對實時數據執行靈活影射和變換.
  • 提供數據壓縮和加密:降低傳輸所需帶寬,提高傳輸安全性.
OGG的工作原理:

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投遞過來的數據重新組裝成遠程ttrail文件。
  • Replicat進程,通常我們也把它叫做應用進程。運行在目標端,是數據傳遞的最后一站,負責讀取目標端trail文件中的內容,並將其解析為DML或 DDL語句,然后應用到目標數據庫中。
關於OGG的Trail文件:
    • 為了更有效、更安全的把數據庫事務信息從源端投遞到目標端。GoldenGate引進trail文件的概念。前面提到extract抽取完數據以 后 Goldengate會將抽取的事務信息轉化為一種GoldenGate專有格式的文件。然后pump負責把源端的trail文件投遞到目標端,所以源、 目標兩端都會存在這種文件。
    • trail文件存在的目的旨在防止單點故障,將事務信息持久化,並且使用checkpoint機制來記錄其讀寫位置,如果故障發生,則數據可以根據checkpoint記錄的位置來重傳 。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM