本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
將工作負載從 遷移 AWS Data Pipeline 至 Amazon MWAA
AWS 已在 2012 年推出 AWS Data Pipeline 服務。當時,客戶想要一種服務,讓他們使用各種運算選項在不同資料來源之間移動資料。隨著資料傳輸需求隨時間而改變,因此請針對這些需求提供解決方案。您現在可以選擇最符合您業務需求的解決方案。您可以將工作負載遷移至下列任何 AWS 服務:
-
使用 Amazon Managed Workflows for Apache Airflow (Amazon MWAA) 來管理 Apache Airflow 的工作流程協調。
-
使用 Step Functions 在多個 之間協調工作流程 AWS 服務。
-
使用 AWS Glue 執行和協調 Apache Spark 應用程式。
您選擇的選項取決於您目前的工作負載 AWS Data Pipeline。本主題說明如何從 遷移 AWS Data Pipeline 至 Amazon MWAA。
選擇 Amazon MWAA
Amazon Managed Workflows for Apache Airflow (Amazon MWAA) 是 Apache Airflow 的受管協調服務,可讓您大規模在雲端中設定和操作end-to-end資料管道。Apache Airflow
以下重點介紹從 遷移 AWS Data Pipeline 到 Amazon MWAA 的一些優點:
-
增強的可擴展性和效能 – Amazon MWAA 提供靈活且可擴展的架構,用於定義和執行工作流程。這可讓使用者輕鬆處理大型和複雜的工作流程,並利用動態任務排程、資料驅動工作流程和平行處理等功能。
-
改善監控和記錄功能 – Amazon MWAA 與 Amazon CloudWatch 整合,以增強對工作流程的監控和記錄。Amazon MWAA 會自動將系統指標和日誌傳送至 CloudWatch。這表示您可以即時追蹤工作流程的進度和效能,並識別出現的任何問題。
-
AWS 與服務和第三方軟體的更佳整合 – Amazon MWAA 與各種其他服務整合 AWS ,例如 Amazon S3 AWS Glue、Amazon Redshift,以及 DBT
、Snowflake 和 Databricks 等第三方軟體。這可讓您在不同的環境和服務中處理和傳輸資料。 -
開放原始碼資料管道工具 – Amazon MWAA 會利用您熟悉的相同開放原始碼 Apache Airflow 產品。Apache Airflow 是一種專門建置的工具,旨在處理資料管道管理的所有層面,包括擷取、處理、傳輸、完整性測試、品質檢查,以及確保資料譜系。
-
現代化且靈活的架構 – Amazon MWAA 利用容器化和雲端原生、無伺服器技術。這表示要提高靈活性和可攜性,以及更輕鬆地部署和管理工作流程環境。
架構和概念映射
AWS Data Pipeline 和 Amazon MWAA 具有不同的架構和元件,這可能會影響遷移程序和定義和執行工作流程的方式。本節概述兩種服務的架構和元件,並強調一些主要差異。
AWS Data Pipeline 和 Amazon MWAA 都是完全受管的服務。當您將工作負載遷移至 Amazon MWAA 時,您可能需要學習新的概念,以使用 Apache Airflow 建立現有工作流程的模型。不過,您不需要管理基礎設施、修補工作者和管理作業系統更新。
下表將 中的關鍵概念 AWS Data Pipeline 與 Amazon MWAA 中的關鍵概念建立關聯。使用此資訊做為設計遷移計劃的起點。
概念 | AWS Data Pipeline | Amazon MWAA |
---|---|---|
管道定義 | AWS Data Pipeline 使用以 JSON 為基礎的組態檔案來定義工作流程。 | Amazon MWAA 使用以 Python 為基礎的定向無環圖形 |
管道執行環境 | 在 Amazon EC2 執行個體上執行的工作流程。代表您 AWS Data Pipeline 佈建和管理這些執行個體。 | Amazon MWAA 使用 Amazon ECS 容器化環境來執行任務。 |
管道元件 | 活動正在處理在工作流程中執行的任務。 | 運算子 |
先決條件包含條件式陳述式,在活動可以執行之前,這些陳述式必須是 true。 | 感應器 |
|
中的資源 AWS Data Pipeline 是指執行管道活動指定的工作的 AWS 運算資源。Amazon EC2 和 Amazon EMR 是兩個可用的資源。 | 在 DAG 中使用任務,您可以定義各種運算資源,包括 Amazon ECS、Amazon EMR 和 Amazon EKS。Amazon MWAA 會在 Amazon ECS 上執行的工作者上執行 Python 操作。 | |
管道執行 | AWS Data Pipeline 支援使用一般速率型和 Cron 型模式來排程執行。 | Amazon MWAA 支援使用 Cron |
執行個體是指管道的每個執行。 | DAG 執行 |
|
嘗試是指重試失敗的操作。 | Amazon MWAA 支援您在 DAG 層級或任務層級定義的重試。 |
實作範例
在許多情況下,遷移至 Amazon MWAA AWS Data Pipeline 後,您將可以重複使用目前與 協調的資源。下列清單包含使用 Amazon MWAA 進行最常見 AWS Data Pipeline 使用案例的範例實作。
-
執行 Amazon EMR 任務
(AWS workshop) -
為 Apache Hive 和 Hadoop 建立自訂外掛程式 (Amazon MWAA 使用者指南)
-
將資料從 S3 複製到 Redshift
(AWS workshop) -
在遠端 Amazon ECS 執行個體上執行 Shell 指令碼 (Amazon MWAA 使用者指南)
-
協調混合式 (內部部署) 工作流程
(部落格文章)
如需其他教學課程和範例,請參閱以下內容:
定價比較
的定價 AWS Data Pipeline 取決於管道數量,以及您使用每個管道的數量。您每天執行超過一次 (高頻率) 的活動,每個活動每月花費 1 美元。您每天執行一次或更少 (低頻率) 的活動,每個活動每月花費 0.60 美元。非作用中管道的定價為每個管道 1 美元。如需詳細資訊,請參閱 AWS Data Pipeline 定價頁面
Amazon MWAA 的定價是根據受管 Apache Airflow 環境存在的持續時間,以及提供更多工作者或排程器容量所需的任何其他自動擴展。您每小時支付 Amazon MWAA 環境用量 (以一秒解析度計費),費用會因環境大小而異。Amazon MWAA 會根據您的環境組態自動調整工作者數量。 會分別 AWS 計算其他工作者的成本。如需使用各種 Amazon MWAA 環境大小的每小時成本詳細資訊,請參閱 Amazon MWAA 定價
相關資源
如需使用 Amazon MWAA 的詳細資訊和最佳實務,請參閱下列資源: