使用 mLogica LIBER*IRIS 將大型主機數據層遷移至 Azure

適用於 MySQL 的 Azure 資料庫
適用於 PostgreSQL 的 Azure 資料庫
Azure Cosmos DB
Azure SQL Database
Azure 儲存體

大型主機應用程式的大量交易會建立大量數據。 Azure 為大型主機現代化和數據遷移提供吸引人的目標。 Azure 關係型和 NoSQL 資料庫提供延展性、高可用性,以及符合或超過大型主機環境的維護便利性。 如果您想要淘汰大型主機工作負載,並將數據保留在低成本記憶體中,Azure 會提供選項。

將工作負載從大型主機移轉至 Azure 作為應用程式重新調整或重構的一部分,通常需要大規模數據遷移。 mLogica 的 LIBER*IRIS 提供經證實的解決方案,可從大型主機遷移至 Azure 的大量數據。 解決方案會大規模運作,以遷移企業工作負載。 本文說明如何將IBM z/OS 大型主機數據以高逼真度移轉至 Azure。

mLogica LIBER*IRIS 及其標誌是其公司的商標。 使用這些標記時,不會隱含任何背書。

架構

下圖顯示 mLogica LIBER*IRIS 如何與 Azure 元件整合,以大規模將大型主機數據遷移至 Azure。

Architecture diagram shows the architecture of how mLogica LIBER*IRIS integrates with Azure components to migrate mainframe data.

下載此架構的 Visio 檔案

工作流程

將大型主機數據遷移至 Azure 的步驟如下:

  1. 使用 FTPS 透過安全的 Azure 站對站虛擬專用網 (VPN) 或 Azure ExpressRoute,將資料定義語言 (DDL) 檔案、資料庫描述 (DBD) 檔案、複製book、數據配置和其他數據描述成品複製到使用 mLogica 數據遷移服務工具設定的 Azure Linux 虛擬機。
  2. mLogica Liber*IRIS 數據遷移叢集會產生數據擷取腳本,以在大型主機上執行。
  3. 透過 VPN 使用 FTPS 將資料擷取腳本傳輸到大型主機。 FTPS 聯機會將 ASCII 轉換為大型主機 EBCDIC 格式。
  4. 擷取的腳本會在大型主機上執行。 他們會將數據從多個來源匯出成 循序檔案,其中所有封裝的小數點數據都會解除封裝。 它們會產生用來將數據載入目標資料庫的 SQL 載入腳本
  5. 循序檔案和載入腳本會使用二進位 SFTP 傳輸至 Azure Blob 儲存體。 大型主機數據目前仍為 EBCDIC 格式。
  6. mLogica 資料遷移服務會執行載入腳本,將 EBCDIC 轉換為 ASCII。 腳本會在載入至 Azure 儲存體 期間寫入錯誤。 若要降低成本,您可以使用兩個記憶體帳戶:將數據檔儲存在經常性存取層上,以及冷存取層上的記錄檔。
  7. 腳本會將 ASCII 轉換的數據從循序檔案載入目標 Azure 關係資料庫。 載入文稿包含 DDL 命令,可建立資料表和其他物件,以及 SQL 查詢,以將數據載入這些物件。 視需要水平調整整個叢集的負載程式,以最大化輸送量。 執行記錄和詳細的例外狀況記錄會儲存在 Azure Blob 儲存體 中,以供進一步分析。
  8. mLogica Liber*IRIS 資料遷移服務會執行載入腳本,將數據從關係檔案格式轉換成 NoSQL 資料庫格式。 您可以使用 Azure Cosmos DB SQL API,將此 NoSQL 數據載入 Azure Cosmos DB。

元件

  • 網路和身分識別

    • Azure ExpressRoute 可讓您使用連線提供者,透過私人連線將內部部署網路延伸至 Azure。
    • Azure VPN 閘道 是虛擬網路閘道,可用來透過因特網在 Azure 虛擬網路與內部部署位置之間傳送加密流量。
    • Microsoft Entra ID 是可與內部部署目錄同步處理的身分識別和存取管理服務。
  • 應用程式

    • Azure 虛擬機器 提供隨選、可調整的運算資源。 mLogica 資料遷移叢集會在針對網路效能優化的 Azure Linux 虛擬機上執行。
  • 儲存體

    • Azure Blob 儲存體 提供高可用性、待用加密、符合成本效益、高容量儲存設施。 它可啟用來自大型主機的直接二進位 SFTP 流量。 Blob 儲存體 可以使用 NFS 在 Linux 虛擬機上掛接容器。
    • Azure SQL適用於 PostgreSQL 的 Azure 資料庫適用於 MySQL 的 Azure 資料庫 是 SQL Server、PostgreSQL 和 MySQL 的完全受控平臺即服務(PaaS) 服務。 它們提供大型主機關係型數據、模擬非關係型數據,以及模擬虛擬 儲存體 存取方法 (VSAM) 數據的高效能、高可用性選項。
    • Azure Cosmos DB 是 Azure NoSQL 資料庫。 使用它來移轉資訊管理系統(IMS)、整合式資料庫管理系統(IDMS)和可調整的資料庫系統(ADABAS)等非關係型大型主機來源。
  • 監視

    • Azure 監視器 提供全方位的解決方案,可從雲端和內部部署環境收集、分析及處理遙測數據。
    • Application Insight 會接收應用程式遙測來分析和呈現。
    • Azure 監視器記錄 是 Azure 監視器的一項功能,可從受監視的資源收集及組織記錄和效能數據。 這項功能可以將多個來源的數據合併到單一工作區。 這些來源包括來自 Azure 服務的平台記錄、虛擬機器代理程式的記錄和效能數據,以及來自應用程式的使用量和效能數據。 使用複雜的查詢語言一起分析這些來源,其能夠快速分析數百萬筆記錄。
    • Log Analytics 是 Azure 監視器的功能。 記錄查詢可協助您使用 Azure 監視器記錄和 mLogica 載入腳本執行記錄中收集的數據,這些記錄會儲存在 Blob 儲存體 中。 功能強大的查詢語言可讓您聯結來自多個數據表的數據、匯總大量數據集,以及執行複雜的作業。

潛在的使用案例

此範例工作負載有兩個主要使用案例:

  • 工作負載重新調整或重構

    將所有與工作負載相關的大型主機數據從大型主機移至 Azure。 此數據報括資料庫,例如 Db2、IMS 和 IDMS,以及檔案。

  • 檔案

    淘汰大型主機工作負載,並將數據保留在低成本的 Azure 記憶體解決方案中。

建議

除非您有覆寫這些建議的特定需求,否則請遵循下列一般建議:

  • 若要降低網路等待時間,請在一個區域中建立此案例中提及的所有 Azure 資源。
  • 不要將單一大型檔案從大型主機傳送至 Azure,而是將數據分割成多個檔案,並以平行方式傳送。

考量

這些考慮會實作 Azure Well-Architected Framework 的支柱,這是一組指導原則,可用來改善工作負載的品質。 如需詳細資訊,請參閱 Microsoft Azure Well-Architected Framework

可靠性

可靠性可確保您的應用程式可以符合您對客戶的承諾。 如需詳細資訊,請參閱 可靠性要素概觀。

復原

使用 Azure 監視器和 Application Insights 來監視 mLogica 資料遷移叢集。 設定主動式管理的警示。

如需 Azure 中復原的詳細資訊,請參閱 設計可靠的 Azure 應用程式

可用性

此範例工作流程描述大型主機到 Azure 數據遷移,以重新格式化、重構或封存工作負載。 此工作是離散的,在長達一個月的專案中執行數次。 雖然此案例中不需要高可用性,但您可以設計 mLogica 資料遷移叢集以提供高可用性。

Azure 資料庫服務支援區域備援。 如果發生中斷或維護期間,您可以將它們設定為故障轉移。

安全性

安全性可提供針對蓄意攻擊和濫用寶貴數據和系統的保證。 如需詳細資訊,請參閱 安全性要素概觀。 如需設計安全解決方案的一般指引,請參閱 Azure 安全性檔

Azure 支援 各種安全性選項中的資料庫服務:

您可以使用 Microsoft Entra ID 來控制 mLogica 資料遷移叢集上的驗證和存取控制。 您可以使用 Microsoft Entra ID 和角色型訪問控制來設定 Azure 資源以進行驗證和授權。

在 mLogica 資料遷移叢集與大型主機之間傳輸的數據會使用 TLS 加密傳輸。 TLS 憑證可以儲存在 Azure 金鑰保存庫,以提高安全性。 從大型主機傳輸至 Azure Blob 儲存體 的數據會使用 SSH 加密傳輸中。

大型主機數據和載入腳本會暫時儲存在 Azure Blob 儲存體 中。 待用時加密。 移轉完成後,會從 Azure Blob 儲存體 刪除數據。

此範例工作流程會使用 Azure ExpressRoute 或 站對站 VPN ,從內部部署環境私人且有效率地連線到 Azure。

成本最佳化

成本優化是考慮如何減少不必要的費用,並提升營運效率。 如需詳細資訊,請參閱 成本優化要素概觀。

以下是一些成本優化的可能性:

  • Azure SQL 資料庫 無伺服器會自動根據工作負載活動調整、暫停和繼續計算資源,因此您只需支付您取用的資源費用。

  • 使用生命周期原則在 Azure 記憶體中的存取層之間行動數據。

  • 在 Azure 記憶體中,如果沒有一段時間的存取權,請將您的數據從較熱存取層移至較冷的存取層。 您也可以將資料從較冷存取層移至封存存取層。

  • 使用 Azure Advisor 來尋找未使用的資源。 取得如何重新設定或合併資源以降低費用的建議。

使用 Azure 定價計算機來估計使用此解決方案的 Azure 元件成本。

卓越營運

卓越營運涵蓋部署應用程式的作業程式,並讓它在生產環境中執行。 如需詳細資訊,請參閱 營運卓越支柱概觀。

Azure DevOps 可用於在軟體開發和小組共同作業的每個階段,在 Azure 上重新設計大型主機應用程式。 Azure DevOps 提供下列服務:

  • Azure Boards。 敏捷式規劃、工作項目追蹤、視覺效果和報告。
  • Azure Pipelines。 支援容器或 Kubernetes 的語言、平臺和雲端獨立持續整合/持續傳遞 (CI/CD) 平臺。
  • Azure Repos。 雲端裝載的私人 Git 存放庫。
  • Azure Artifacts。 整合式套件管理,支持來自公用或私人來源的 Maven、npm、Python 和 NuGet 套件摘要。
  • Azure Test Plans。 整合式規劃和探勘測試解決方案。

效能效益

效能效率是工作負載調整的能力,以符合使用者以有效率的方式滿足其需求。 如需詳細資訊,請參閱 效能效率要素概觀

如果您要移轉多個大型獨立數據集,請在多部虛擬機上部署 mLogica 資料遷移叢集,以最大化數據載入速度。

您可以從大型主機平行將多個數據集上傳至 Blob 儲存體。

Azure SQL DB 無 伺服器提供根據工作負載自動調整的選項。 您可以使用自動化來相應增加和減少其他 Azure 資料庫,以符合工作負載需求。 如需詳細資訊,請參閱 自動調整

參與者

本文由 Microsoft 維護。 它最初是由下列參與者所撰寫。

主體作者:

Sandip Khandelwal |資深工程架構師

若要查看非公用LinkedIn配置檔,請登入LinkedIn。

下一步

檢閱 Azure 資料庫移轉指南

如需詳細資訊,請連絡 Azure 資料工程師 ing - 大型主機和 Midrange 現代化