IBM Data Replication 是一套運用 Change Data Capture(CDC)技術,實現異質資料庫系統即時資料同步與抄寫的資料整合解決方案。作為傳統 ETL 批次式資料整合的補充技術,該方案能即時從來源資料庫的交易日誌中擷取資料異動,並將變更內容傳送至目標資料庫,或是各類第三方中介平台與工具。相較於需要設計批次作業(Batch Job)的 ETL 工具,IBM Data Replication(以下簡稱 IDR)是一種基於配置設定(Config-based)的工具軟體。使用者僅需透過滑鼠操作完成設定與配置,再視需求撰寫少量客製化的衍生表達式(Derived Expressions),即可快速滿足異質資料庫之間的即時資料同步抄寫需求。
本系列文章將帶您逐步了解資料同步與抄寫的實作流程。首先《環境建置篇》將聚焦於整體實作環境所需的軟體安裝與設定,共分為來源端(Part 1)、目的端(Part 2)與中控端(Part 3)等三篇文章。其次在《實作演練篇》則會詳細說明 IDR 如何因應各種常見使用場景的操作流程,共分為標準與稽核模式同步抄寫(Part 1)、自訂客製化稽核欄位(Part 2)、同步抄寫作業的停止與重新啟動(Part 3)以及同步抄寫作業監控與效能瓶頸分析(Part 4)等四篇文章,這些豐富地內容將可協助您快速掌握實務操作的技巧。
IDR CDC 資料同步抄寫實作環境配置
本系列文章將以 Oracle Database 資料同步抄寫至 Microsoft SQL Server 做為案例場景,實作環境配置三個 Windwos Server 作業系統主機,分別建置來源端 Oracle Database、目的端 Microsoft SQL Server、以及 IDR CDC Server 中控端所需之軟體。整體配置如下圖所示:
IDR CDC 資料同步抄寫實作《環境建置篇》Part 3:中控端環境建置
1.IDR CDC 存取伺服器軟體安裝
存取伺服器(Access Server)在 IDR 的三大主要軟體元件中,扮演著溝通橋樑的角色。所有對資料抄寫引擎的設定、控制與監控,包括管理主控台(Management Console)與命令列指令控制介面(Command Line Interface,CLI)都必須透過存取伺服器來進行連接。中控端主機首先會安裝 IDR CDC 存取伺服器軟體(版本同樣為 V11.4.0.5),請以系統管理員身分執行安裝程式:iidraccess-11.4.0.5-11175-setup.exe。
請直接使用預設安裝路徑:C:\Program Files\IBM\InfoSphere Data Replication\Access Server,並且選擇接受軟體授權合約。
選擇「在桌面上」建立軟體捷徑,然後不啟用 LDAP 認證整合。
選擇使用預設的 Access Server 連接埠(10101),接著設定 Access Server 的管理者帳號及密碼。使用者名稱:Admin(預設值);使用者密碼:!QAZ2wsx。
使用預設的使用者資料資料夾:C:\Users\Administrator\AppData\Local\IBM\InfoSphere Data Replication\Access Server\11.4,點擊「安裝」按鈕,開始安裝。
存取伺服器(Access Server)軟體安裝完成後,請點擊「完成」按鈕關閉安裝程式。
2.IDR CDC 管理主控台軟體安裝
管理主控台是一個運行在 Microsoft Windows 平台的 GUI 管理工具,用於配置和監控資料抄寫引擎,並協助管理來源與目標系統之間的資料同步抄寫作業。透過這個直覺且簡單的圖形使用者介面,系統管理人員可以定義來源系統的資料如何同步、何時同步,以及同步抄寫到那些目標系統。當同步抄寫作業啟動後,即使關閉管理主控台應用程式,來源與目標系統之間的資料同步作業也不會受到影響。
此外,管理主控台內建事件日誌與監控工具,事件日誌能夠顯示資料同步過程中的各種事件訊息,監控工具則以圖表方式協助系統管理人員持續監控抄寫狀態、延遲時間以及相關的統計資訊。中控端主機接著會安裝 IDR CDC 管理主控台軟體(版本同樣為 V11.4.0.5),請以系統管理員身分執行安裝程式:iidrmc-11.4.0.5-11175-setup.exe。
請直接使用預設安裝路徑:C:\Program Files\IBM\InfoSphere Data Replication\Management Console,並且選擇接受軟體授權合約。
選擇「在桌面上」建立軟體捷徑,然後不啟用 LDAP 認證整合。
確認所有的參數配置項目都正確後,即可開始安裝軟體。安裝完成後,請點擊「完成」按鈕關閉安裝程式。
3.實作相關軟體安裝(Python Runtime)
為了讓 IDR CDC 資料同步抄寫的實作更佳便利,我們將使用 Python 程式對 Oracle 資料庫產生大量資料新增、修改、刪除的操作,因此需要在中控端伺服器安裝 Python Runtime 程式以及相關軟體套件。此外,我們也會在中控端伺服器安裝 Oracle SQL Developer 與 Microsoft SQL Server Management Studio,以方便確認資料庫中的內容。
除了相關軟體安裝之外,我們還需要在來源端與目的端伺服器中建立防火牆連線規則,說明如下:
- 來源端伺服器(CDC-SOURCE):建立連入規則 CDC-Oracle-1521,允許使用 1521 連接埠與來源端 Oracle 資料庫進行連線。
- 目的端伺服器(CDC-TARGET):建立連入規則 CDC-SQL-Server-1433,允許使用 1433 連接埠與目的端 Microsoft SQL Server 進行連線。
欲安裝 Python 程式,請於官方網站中下載最新版之 Python 安裝程式(本文章當時下載及安裝的版本為 Python 3.12.4),並且執行安裝程式。開啟命令提示字元視窗,輸入 python 即可確認安裝是否完成(請記得在作業系統 Path 環境變數中加入 Python 安裝程式的路徑)。
由於我們的 Python 程式需要連線至 Oracle 資料庫,因此需要安裝 cx_Oracle 套件。為避免安裝 cx_Oracle 套件過程中發生錯誤,請依據指示下載及安裝 Microsoft C++ Build Tools(https://visualstudio.microsoft.com/visual-cpp-build-tools/)。安裝程式啟動後,請勾選「使用 C++ 的桌面開發」工具,除了預設功能之外,請勾選以下五項選擇性功能。
- MSVC v143 – VS 2022 C++ x64/x86 建置工具。
- Windows 11 SDK。
- 適用於 Windows 的 C++ CMake 工具。
- 測試工具的核心功能 - 建置工具。
- C++ AddressSanitizer。
Microsoft Visual C++ 14.0 等相關軟體安裝完成後,請開啟命令提示字元視窗,輸入指令:pip install cx_Oracle,安裝 cx_Oracle 套件。
接下來,我們需要下載 Oracle Instant Client(Version 21.14.0.0.0)軟體,請於 https://www.oracle.com/database/technologies/instant-client/winx64-64-downloads.html 網站中下載 Version 21.14.0.0.0 的 Basic Package。
Oracle Instant Client 軟體下載完成後,直接解壓縮 instantclient-basic-windows.x64-21.14.0.0.0dbru.zip 檔案,並將 instantclient_21_14 資料夾搬移到 C:\sqldeveloper 資料夾中(與 Oracle SQL Developer 放在一起)。
最後,我們使用自行撰寫的 Python 程式測試與 Oracle 資料庫之間的連線。請在命令提示字元視窗中執行 python Query_Oracle.py,並且確認該程式可以成功查詢 CREDIT_APP 資料表的筆數(Query_Oracle.py 程式內容如下圖所示)。
到目前為止 IBM Data Replication (CDC) 資料同步抄寫實作系列《環境建置篇》的來源端、目的端、以及中控端等三台伺服器所需的軟體均已準備完成。後續有關 IDR CDC 四種常見資料同步抄寫的實際操作將發表於《實作演練篇》系列文章中,我們期望這一系列的文章能夠讓大家更清楚理解 IDR CDC 的軟體運作機制以及它可以為企業帶來的實質效益。
Part 2:目的端環境建置 《 上一篇
版權聲明
文章內容未經授權,請勿進行任何形式的複製、修改或發佈本文內容,如需轉載或引用,請在使用時注明出處並取得授權。本文中提及的特定公司、產品、品牌名稱等僅為描述目的,其版權歸屬於相應的公司或擁有者。
沒有留言:
張貼留言