本文件說明將 MongoDB 工作負載隨即轉移至以虛擬核心為基礎的 Azure Cosmos DB for MongoDB 供應項目的各種選項。
移轉可以透過兩種方式來完成:
離線移轉:以快照集為基礎且從來源大量複製到目標。 於快照集之後在來源上新增/更新/刪除的新資料不會複製到目標。 所需的應用程式停機時間取決於大量複製活動完成所需的時間。
線上移轉:除了離線移轉中完成的大量資料複製活動之外,變更串流會監視所有的新增/更新/刪除作業。 當大量資料複製完成後,變更資料流中的資料會被複製到目標。 此過程確保在移轉過程中所做的所有更新都會轉移至目標。 所需的應用程式停機時間最少。
預遷移評估
使用 適用於 Azure Data Studio 的 MongoDB 移轉延伸模組 來執行相容性評估。 此階段的目的是要識別目前的 MongoDB 解決方案中存在的任何不相容或警告。 您應先解決評估結果中發現的問題,再繼續進行移轉程序。
提示
建議您詳細檢閱支援的功能和語法,並在實際移轉之前先執行概念證明。
遷移
本文所討論的工具可協助您從下列來源移轉 MongoDB 工作負載:
- MongoDB 虛擬機
- MongoDB Atlas
- AWS DocumentDB
線上 Web 應用程式
使用 MongoMigrationwebBasedUtility 簡化移轉至適用於 MongoDB 的 Azure Cosmos DB(以虛擬核心為基礎),這是專為效率、可靠性和易於使用而設計的工具。 資料庫提供詳細的逐步指示,以移轉您的工作負載。 此工具提供在線和離線資料遷移的順暢體驗。 此程式是使用者易記的,只需要提供來源和目標詳細數據。 它可讓您輕鬆地移轉 MongoDB 集合,同時維持控制權、安全性及可擴展性,並釋放 Azure Cosmos DB 的完整潛力。
主要功能包括:
- 支援虛擬網路內的私人部署,以提高安全性
- 當發生連線遺失或暫時性錯誤時,具備自動恢復的功能。
- 用戶易記介面
- 存取 GitHub 上的 C# 原始程式碼
此工具支持彈性的部署選項,且獨立運作,而不需要相依於其他 Azure 資源。 此外,它透過可自定義的 Azure Web 應用程式定價方案,提供可調整的效能。
Azure Data Studio (線上)
適用於 Azure Data Studio 的 MongoDB 移轉延伸模組是一種簡單且成本零的工具,旨在協助您將 MongoDB 工作負載遷移至以虛擬核心為基礎的 Azure Cosmos DB for MongoDB。
這很重要
此工具不支援下列案例:
- 使用私人端點啟用來源或目標帳戶的移轉。
- 在來源或目標帳戶的防火牆無法接受大範圍IP地址的情況下進行的移轉。 此工具會要求您允許從全域 Azure 資料中心連線到來源和目標帳戶。 如需詳細資訊,請參閱 全域 Azure IP 位址範圍。
此工具有兩個階段:
- 預先移轉評估 - 評估您目前的 MongoDB 資料資產,以確認是否有任何不相容之處。
- 移轉 - 使用 Azure 管理的服務進行的移轉作業。
透過圖形使用者介面,您可以從頭到尾監督整個預先移轉評定和移轉程式,或者您可以選擇只執行預先移轉評定。 在 Azure Data Studio 中起始移轉時,實際上會在 Azure 受控資源的雲端中執行。
原生 MongoDB 工具 (離線)
您也可以使用 mongodump/mongorestore、mongoexport/mongoimport 等原生 MongoDB 工具,將資料集離線遷移(不複製即時變更)到基於 vCore 的 Azure Cosmos DB for MongoDB 選項。
案例 | MongoDB 原生工具 |
---|---|
移動資料庫資料的子集 (以 JSON/CSV 為基礎) | mongoexport/mongoimport |
移動整個資料庫 (以 BSON 為基礎) | mongodump/mongorestore |
- mongoexport/mongoimport 是一組最適合用來移轉 MongoDB 資料庫子集的移轉工具。
- mongoexport 會將您現有的資料匯出至人們可讀取的 JSON 或 CSV 檔案。 mongoexport 會採用引數,以指定要匯出的現有資料子集。
- mongoimport 會開啟 JSON 或 CSV 檔案,並將內容插入目標資料庫執行個體中 (在此案例中是以虛擬核心為基礎的 Azure Cosmos DB for MongoDB)。
- JSON 和 CSV 並非壓縮格式;當 mongoimport 將資料傳送至以虛擬核心為基礎的 Azure Cosmos DB for MongoDB 時,可能會產生額外的網路費用。
- mongodump/mongorestore 是一組最適合用來移轉整個 MongoDB 資料庫的移轉工具。 將資料插入以虛擬核心為基礎的 Azure Cosmos DB for MongoDB 時,壓縮 BSON 格式可讓網路資源的使用更有效率。
- mongodump 會將您現有的資料匯出為 BSON 檔案。
- mongorestore 會將您的 BSON 檔案傾印匯入以虛擬核心為基礎的 Azure Cosmos DB for MongoDB 中。
注意
MongoDB 原生工具只能在主機硬體允許的速度上限內移動資料。
使用 Azure Databricks 進行資料遷移 (線上)
在某些特殊情況下,您可能需要在移轉期間有更大的控制和更高的輸送量。 使用 Azure Databricks 進行移轉可提供移轉率的完整控制。 此方法也能夠處理大小為TB的大型數據集。 Spark 移轉公用程式會在 Databricks 中當做作業運作。
註冊 Azure Cosmos DB for MongoDB Spark 移轉,以取得 Spark 移轉工具 GitHub 存放庫的存取權。 存放庫提供將工作負載從各種 Mongo 來源移轉至 V 核心型 Azure Cosmos DB for MongoDB 的詳細逐步指示。
相關內容
- 使用原生 MongoDB 工具將資料移轉至以虛擬核心為基礎的 Azure Cosmos DB for MongoDB。
- 使用適用於 Azure Data Studio 的 MongoDB 移轉延伸模組,將資料移轉至 V 核心型 Azure Cosmos DB for MongoDB。