使用 RDRS 將大型主機和中範圍數據複寫至 Azure

Azure 資料庫移轉服務
Azure Functions
Azure Logic Apps
Azure SQL Database
Azure 儲存體

火箭®數據復寫和同步處理(RDRS),先前稱為 tcVISION,是由火箭軟體開發的數據復寫解決方案。 RDRS 為數個 Azure 數據平臺服務提供大型主機數據復寫、數據同步處理、數據遷移和異動數據擷取 (CDC) 的 IBM 大型主機整合解決方案。

架構

將大型主機遷移至 Azure 數據平臺之數據流的架構圖表。

下載此架構的 Visio 檔案

工作流程

  1. RDRS 數據復寫解決方案支援來自許多大型主機資料庫的 CDC,包括 IBM Db2、IBM 資訊管理系統 (IMS) DB、適用於軟體 AG 的 Adabas、CA Datacom 和電腦關聯整合式 資料管理 系統 (CA IDMS)。 RDRS 提供記錄型 CDC 代理程式,以擷取記錄層級上的變更數據。 此以記錄為基礎的 CDC 會對生產源資料庫造成微不足道的額外負荷。

  2. RDRS 支援來自虛擬 儲存體 存取方法 (VSAM) 檔案的 CDC。

  3. 工作會在大型主機上啟動。 啟動的工作或 STC 會在大型主機上建立,作為 RDRS 軟體安裝的一部分。 兩個重要 STC 為:

    • 擷取代理程式,其會從來源擷取已變更的數據。
    • 套用代理程式,其使用資料庫管理系統 (DBMS) 特定的 API,有效率地將數據寫入目標。

    注意

    針對 Db2 z/OS,RDRS 也會透過不需要 STC 的 Db2 使用者定義類型 (UDT) 來提供無代理程式 CDC 解決方案。

  4. 開放式平臺管理員 (OPM) 會作為複寫伺服器。 此伺服器包含自動數據對應的公用程式,以產生來源和目標的元數據。 它也包含從來源擷取數據的規則集。 伺服器會轉換及處理目標系統的數據,並將數據寫入目標中。 您可以在 Linux、Unix 和 Windows 作業系統上安裝此元件。

  5. RDRS 儀錶板提供數據交換程式的管理、檢閱、作業、控制及監視。 RDRS 命令列公用程式會將資料交換程式自動化,以及管理數據同步處理程式的自動作業。

  6. RDRS 套用代理程式會使用 DBMS 特定的 API。 這些 API 會有效率地實作實時資料變更,並結合來源的 CDC 技術到目標 Azure 數據服務,這表示資料庫和檔案。

  7. RDRS 支援將變更的數據直接串流至 Azure 事件中樞 或 Kafka。 然後,Azure Logic Apps、函式或虛擬機 (VM) 中的自定義解決方案會處理這些事件。

  8. RDRS 支援的 Azure 數據平台目標包括 Azure SQL 資料庫、適用於 PostgreSQL 的 Azure 資料庫、適用於 MySQL 的 Azure 資料庫、Azure Cosmos DB、Azure Data Lake 儲存體 等。

  9. 登陸 Azure 數據平台的數據會由 Azure 服務或其他允許查看的平台取用。 範例包括 Power BI、Azure Synapse Analytics 或自定義應用程式。

  10. RDRS 可以反向同步處理 Azure 資料庫平臺的擷取變更(例如 SQL 資料庫、適用於 MySQL 的 Azure 資料庫、適用於 PostgreSQL 的 Azure 資料庫 或 Data Lake 儲存體),並將其寫回大型主機數據層。

  11. 大型主機資料庫備份和卸載檔案會使用 RDRS 進行大量載入處理,複製到 Azure VM。

  12. RDRS 大量載入會使用大型主機源數據執行初始目標資料庫載入。 源數據可以直接從大型主機數據存放區或大型主機備份或卸除檔案讀取。 大量載入提供大型主機數據類型的自動轉譯,例如擴充二進位編碼十進位交換碼 (EBCDIC)包裝字段。 使用備份或卸除數據以獲得最佳效能,而不是直接讀取大型主機資料庫。 您不應該直接讀取資料庫,因為將卸除或備份數據移至必要的 RDRS Azure VM,並使用原生資料庫載入器可將網路輸入/輸出 (I/O) 降到最低,並減少載入時間。

元件

解決方案會使用下列元件。

網路和身分識別元件

  • Azure ExpressRoute:ExpressRoute 可讓您透過連線提供者所處理的私人連線,將內部部署網路延伸至 Microsoft Cloud。 您可以使用 ExpressRoute 來建立雲端服務的連線,例如 Microsoft Azure 和 Microsoft 365。
  • Azure VPN 閘道:VPN 閘道是特定類型的虛擬網路閘道,可透過公用因特網在 Azure 虛擬網路與內部部署位置之間傳送加密流量。
  • Microsoft Entra ID:Microsoft Entra ID 是一種身分識別和存取管理服務,您可以與內部部署目錄同步處理。

應用程式元件

  • Logic Apps:Logic Apps 可協助依排程建立及執行自動化的週期性工作和程式。 您可以呼叫 Azure 內外的服務,例如 HTTP 或 HTTPS 端點、將訊息張貼至 Azure 服務,例如 Azure 儲存體 和 Azure 服務匯流排,或將檔案上傳至檔案共用。
  • Azure Functions:Azure Functions 可讓您執行稱為函式的小型程序代碼,而不必擔心應用程式基礎結構。 當您使用 Functions 時,雲端基礎結構會提供最新的伺服器,讓應用程式大規模執行。
  • Azure 虛擬機器:Azure VM 是隨選、可調整的運算資源。 Azure VM 提供虛擬化的彈性,並消除實體硬體的維護需求。 Azure VM 同時在 Windows 和 Linux 系統上運作。

儲存體元件

  • 儲存體:儲存體 提供非受控記憶體解決方案,例如 Azure Blob 儲存體、Azure 數據表 儲存體、Azure 佇列 儲存體 和 Azure 檔案儲存體。 Azure 檔案儲存體 特別適用於重新設計大型主機解決方案,並提供具有受控 SQL 記憶體的有效附加元件。
  • Azure SQL:Azure SQL 是 Azure 中 SQL Server 的完整受控平台即服務(PaaS)。 關係型數據可以與其他 Azure 元件有效率地移轉及使用,例如 Azure SQL 受控執行個體、Azure SQL VM、適用於 PostgreSQL 的 Azure 資料庫、適用於 MariaDB 的 Azure 資料庫 和 適用於 MySQL 的 Azure 資料庫。
  • Azure Cosmos DB:Azure Cosmos DB 是一種無 SQL 供應專案,可讓您用來將非表格式數據從大型主機移轉。

監視元件

  • Azure 監視器:Azure 監視器提供全方位的解決方案,可從雲端和內部部署環境收集、分析及處理遙測數據。
  • Application Insights:Application Insights 會分析並呈現應用程式遙測。
  • Azure 監視器記錄:Azure 監視器記錄是監視功能,可從受監視的資源收集及組織記錄和效能數據。 您可以將來自多個來源的數據合併,例如來自 Azure 服務的平台記錄、VM 代理程式的記錄和效能數據,以及應用程式的使用量和效能數據,合併成單一工作區,以使用複雜的查詢語言,快速分析數百萬筆記錄。
  • Log Analytics:Log Analytics 是 Azure 入口網站 中的工具。 您可以使用記錄查詢,從 Azure 監視器記錄中收集的數據取得見解。 Log Analytics 使用功能強大的查詢語言,讓您可以聯結多個數據表的數據、匯總大型數據集,以及以最少的程式代碼執行複雜的作業。

考量

這些考量能實作 Azure Well-Architected Framework 的要素,其為一組指導原則,可以用來改善工作負載的品質。 如需詳細資訊,請參閱 Microsoft Azure Well-Architected Framework (部分機器翻譯)。

成本最佳化

成本最佳化是關於考慮如何減少不必要的費用,並提升營運效率。 如需詳細資訊,請參閱成本最佳化要素的概觀使用 Azure 定價計算機來預估實作此解決方案的成本。

可靠性

可靠性可確保您的應用程式符合您對客戶的承諾。 如需詳細資訊,請參閱 可靠性的設計檢閱檢查清單。

  • 在部署在不同的可用性區域中的 Azure VM 上設定 RDRS OPM,以提供高可用性。 如果失敗,則會啟動次要 RDRS OPM,而次要 RDRS OPM 會將其 IP 位址傳達給 RDRS 大型主機管理員。 然後,大型主機會使用邏輯工作單位的組合和重新啟動檔案,與新的 RDRS OPM 通訊,以繼續在其下一個邏輯重新啟動點進行處理。
  • 設計 Azure 資料庫服務以支援區域備援,以便在發生中斷或計劃性維護期間時故障轉移至次要節點。
  • 使用 Azure 監視器記錄和 Application Insights 來監視 Azure 資源的健康情況。 您可以設定主動式管理的警示。

延展性

  • 執行多個平行復寫數據流,設定 CDC 處理的 RDRS 調整。 首先,分析邏輯交易中包含的檔案。 這些檔案必須依序一起處理。 RDRS CDC 程式可確保每個邏輯交易的完整性。 例如,不參與一般交易的數據表集合可能會藉由建立多個處理腳本來分割成平行工作。
  • RDRS 可以在單一 Azure VM 或多個 Azure VM 上同時執行平行並行大量載入處理,以提供水平延展性。 使用任意間隔或數據列篩選,將進程分割成多個工作,以執行大型數據表的快速大量載入作業。 數據列篩選可以使用索引鍵、數據分割索引鍵、日期和其他篩選。
  • SQL 資料庫 無伺服器計算層會根據工作負載提供自動調整選項。 其他 Azure 資料庫可以使用自動化來相應增加和相應減少,以符合工作負載需求。
  • 如需詳細資訊,請參閱 Azure 中的自動調整最佳做法。

安全性

安全性可提供保證,以避免刻意攻擊和濫用您寶貴的資料和系統。 如需詳細資訊,請參閱 安全性的設計檢閱檢查清單。

  • 使用 Microsoft Entra ID 控制 RDRS 的驗證和存取。
  • 使用傳輸層安全性 (TLS) 加密 RDRS 產品之間的資料傳輸(大型主機至 Azure)。
  • 使用 ExpressRoute 或站對站 VPN,從內部部署環境私人且有效率地連線到 Azure。
  • 使用 Microsoft Entra ID 驗證 Azure 資源,並使用角色型存取控制 (RBAC) 管理許可權。
  • 使用 Azure 中的資料庫服務來支援各種安全性選項,例如待用數據加密(TDE)、傳輸中的數據加密(TLS),以及在處理時進行數據加密,因此您的數據一律會加密。
  • 如需如何設計安全解決方案的指導方針,請參閱 Azure 安全性檔
  • 若要瞭解安全性基準,請參閱 Azure 的安全性基準。

案例詳細資料

大型主機是處理大量交易的伺服器。 大型主機應用程式每天產生及取用大量數據。 公用雲端提供彈性、成本優化、易於使用,以及輕鬆整合。 許多 x86 和大型主機應用程式都移至雲端,因此組織必須具備設計完善的大型主機對雲端數據整合和移轉策略。

此案例會使用火箭軟體提供的 RDRS,整合 IBM Z(大型主機)數據層與 Azure 雲端數據平臺。

潛在使用案例

此解決方案適用於大規模數據遷移至 Azure 資料平臺。 針對下列使用案例,請考慮此案例:

  • 大型主機數據層的完整移轉:在此使用案例中,客戶想要將所有 Db2、IMS、IDMS、檔案和其他數據從大型主機移至 Azure 數據平臺。
  • 大型主機和 Azure 型應用程式的共存:在此使用案例中,客戶需要支援大型主機與 Azure 數據平臺之間的雙向同步處理。
  • 存:在此使用案例中,客戶想要儲存數據以進行稽核和合規性,但不想經常存取此數據。 儲存體 提供低成本的解決方案來儲存封存數據。

參與者

本文由 Microsoft 維護。 原始投稿人如下。

主要作者:

其他投稿人:

若要查看非公開的 LinkedIn 設定檔,請登入 LinkedIn。

下一步