從移轉工作負載 AWS Data Pipeline - AWS Data Pipeline

AWS Data Pipeline 不再提供給新客戶。現有客戶 AWS Data Pipeline 可繼續正常使用此服務。進一步了解

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

從移轉工作負載 AWS Data Pipeline

AWS 於二零一二年推出該 AWS Data Pipeline 服務。當時,客戶正在尋找一種服務,以幫助他們使用各種運算選項在不同的資料來源之間可靠地移動資料。現在,還有其他服務可以為客戶提供更好的體驗。例如,您可以使用 AWS Glue 來執行和協調 Apache Spark 應用程式、協助協調 AWS 服務元件的 AWS Step Functions,或使用 Amazon 管理的 Apache 氣流工作流程 (Amazon MWAA) 來協助管理 Apache 氣流的工作流程協調。

本主題說明如何從其他選項移轉 AWS Data Pipeline 至其他選項。您選擇的選項取決於您目前的工作負載 AWS Data Pipeline。您可以將的典型使用案例遷移 AWS Data Pipeline 到 AWS Step Functions 或 Amazon MWAA。 AWS Glue

將工作負載移轉 AWS Glue

AWS Glue 是無伺服器資料整合服務,讓分析使用者可從多個來源輕鬆探索、準備、移動和整合資料。它包括用於編寫、執行工作和協調工作流程的工具。使用 AWS Glue,您可以探索並連接 70 多種不同的資料來源,並在集中式資料目錄中管理您的資料。您可以直觀地建立、執行和監控擷取、轉換和載入 (ETL) 管道,以將資料載入資料湖。此外,您還可以使用 Amazon Athena,Amazon EMR 和 Amazon Redshift Spectrum 立即搜尋和查詢已編目的資料。

我們建議您將 AWS Data Pipeline 工作負載移轉至下列 AWS Glue 時機

  • 您正在尋找支援各種資料來源的無伺服器資料整合服務、包括視覺化編輯器和筆記本在內的編寫介面,以及進階資料管理功能,例如資料品質和敏感資料偵測。

  • 您可以將工作負載移轉至工作 AWS Glue 流程、工作 (使用 Python 或 Apache Spark) 和編目器 (例如,您現有的管道建立在 Apache Spark 之上)。

  • 您需要能夠處理資料管線各個層面的單一平台,包括擷取、處理、傳輸、完整性測試和品質檢查。

  • 您現有的管道是從 AWS Data Pipeline 主控台上預先定義的範本建立的,例如將 DynamoDB 表匯出到 Amazon S3,而且您正在尋找相同的用途範本。

  • 您的工作負載不依賴於特定的 Hadoop 生態系統應用程式,例如 Apache Hive。

  • 您的工作負載不需要協調內部部署伺服器。

AWS 針對搜尋器 (探查資料) 和 ETL 工作 (處理和載入資料),按小時費率計費,以秒計費。 AWS Glue Studio 是用於 AWS Glue 資源的內建協調引擎,而且不需額外付費。在定價中進一步了解AWS Glue 定價

將工作負載移轉至 AWS Step Functions

AWS Step Functions 是一種無伺服器協調服務,可讓您為業務關鍵應用程式建置工作流程。透過 Step Functions,您可以使用視覺化編輯器建立工作流程,並直接整合超過 250 種 AWS 服務的 11,000 個動作,例如 AWS Lambda、Amazon EMR、DynamoDB 等。您可以使用 Step Functions 來協調資料處理管線、處理錯誤,以及處理基礎服務的節流限制。 AWS 您可以建立工作流程來處理和發佈機器學習模型、協調微型服務,以及控制 AWS 服務,例如建立擷取 AWS Glue、轉換和載入 (ETL) 工作流程。也可以為需要人為互動的應用程式建立長時間執行的自動化工作流程。

同樣 AWS Data Pipeline, AWS Step Functions 是由提供的完全託管服務 AWS。您不需要管理基礎結構、修補程式背景工作程式、管理作業系統版本更新或類似項目。

我們建議在以下情況將 AWS Data Pipeline 工作負載移轉至 AWS Step Functions

  • 您正在尋找無伺服器、高可用性的工作流程協調服務。

  • 您正在尋找符合成本效益的解決方案,以單一任務執行的精細程度收費。

  • 您的工作負載正在為多個其他 AWS 服務 (例如 Amazon EMR、Lambda 或 DynamoDB) 協調任務。 AWS Glue

  • 您正在尋找一種低代碼解決方案,該解決方案隨附可 drag-and-drop 視化設計器來創建工作流程,並且不需要學習新的編程概念。

  • 您正在尋找一種服務,該服務提供與 250 多種其他 AWS 服務的集成,涵蓋 11,000 多個操作 out-of-the-box,並允許與自定義非AWS 服務和活動集成。

AWS Data Pipeline 和 Step Functions 都使用 JSON 格式來定義工作流程。這允許將您的工作流程存儲在源代碼控制中,管理版本,控制訪問以及使用 CI/CD 自動化。Step Functions 使用稱為 Amazon 狀態語言的語法,該語法完全基於 JSON,並允許在工作流程的文本和視覺表示之間進行無縫轉換。

使用 Step Functions,您可以選擇目前使用的相同版本的 Amazon EMR。 AWS Data Pipeline

若要移轉 AWS Data Pipeline 受管資源上的活動,您可以使用 Step Functions 上的 AWS SDK 服務整合來自動化資源佈建和清理。

若要移轉現場部署伺服器、使用者管理的 EC2 執行個體或使用者管理的 EMR 叢集上的活動,您可以將 SSM 代理程式安裝到執行個體。您可以從 Step Functions 通過系 AWS Systems Manager 運行命令啟動命令。您也可以從 Amazon 中定義的排程啟動狀態機器 EventBridge。

AWS Step Functions 有兩種類型的工作流程:標準工作流程和快速工作流程。對於標準工作流程,我們會根據執行應用程式所需的狀態轉換次數向您收費。對於 Express 工作流程,系統會根據工作流程的要求數目及其持續時間向您收費。在AWS 步驟函數定價中進一步了解定價

將工作負載遷移到 Amazon MWAA

Amazon MWAA (Apache 氣流的受管工作流程) 是 Apache 氣流的受管協調服務,可讓您更輕鬆地在雲端中大規模設定和操作 end-to-end 資料管道。Apache Airflow 是一種開放原始碼工具,用於以程式設計方式撰寫、排程和監視稱為「工作流程」的程序和工作序列。使用 Amazon MWAA,您可以使用 Airflow 和 Python 程式設計語言建立工作流程,而不必管理基礎設施以提高可擴展性、可用性和安全性。Amazon MWAA 會自動擴展其工作流程執行容量以滿足您的需求,並與 AWS 安全服務整合,協助您快速安全地存取資料。

同樣地 AWS Data Pipeline,Amazon MWAA 是由提供的全受管服務。 AWS雖然您需要瞭解這些服務特定的幾個新概念,但不需要管理基礎結構、修補程式背景工作程式、管理作業系統版本更新或類似項目。

我們建議您在以下情況將 AWS Data Pipeline 工作負載遷移到 Amazon MWAA:

  • 您正在尋找受管理的高可用性服務來協調使用 Python 編寫的工作流程。

  • 您想要轉換成全受管、廣泛採用的開放原始碼技術 Apache Airflow,以獲得最大的可攜性。

  • 您需要能夠處理資料管線各個層面的單一平台,包括擷取、處理、傳輸、完整性測試和品質檢查。

  • 您正在尋找專為資料管線協調流程而設計的服務,其功能包括可觀察性的豐富 UI、針對失敗的工作流程重新啟動、回填,以及重試工作。

  • 您正在尋找一種包含 800 多個預先構建的操作員和傳感器的服務,涵蓋 AWS 以及非AWS 服務。

Amazon MWAA 工作流程會使用 Python 定義為有向無環圖 (DAG),因此您也可以將它們視為原始程式碼。Airflow 的可擴展 Python 框架使您能夠構建與幾乎任何技術相連的工作流程。它配備了用於查看和監控工作流程的豐富用戶界面,並且可以輕鬆地與版本控制系統集成以自動化 CI/CD 流程。

使用 Amazon MWAA,您可以選擇與當前使用的相同版本的 Amazon EMR。 AWS Data Pipeline

AWS 依 Airflow 環境執行時間計費,再加上任何額外的 auto 擴充功能,以提供更多工作者或 Web 伺服器容量。進一步了解 Amazon 受管工作流程的 Apache 氣流定價

映射概念

下表包含由服務使用的主要概念的映射。它將幫助熟悉 Data Pipeline 的人們了解 Step Functions 數和 MWAA 術語。

Data Pipeline 連接詞 Step Functions Amazon 分公司
管道 工作流 工作流 直接丙烯酸圖
管道定義 工作流程定義或以 Python 為基礎的藍圖 Amazon 國家語言 JSON 基於蟒蛇
活動 任務 狀態工作 任務操作員傳感器
執行個體 Job 執行 執行 DAG 運行
Attempts 重試嘗試 捕手和取回器 重試
管線排程 排程觸發 EventBridge 排程器工作 Cron 時間表、資料感知
管線運算式和函數 藍圖程式庫 Step Functions 內在函數和 Lambda AWS 可擴展的 Python 框架

範例

以下各節列出了您可以參考從移轉 AWS Data Pipeline 至個別服務的公開範例。您可以將它們稱為示例,並根據您的使用案例更新和測試,在個別服務上建立自己的管道。

AWS Glue 樣本

下列清單包含最常見 AWS Data Pipeline 使用案例的範例實作。 AWS Glue

AWS Step Functions 示例

下列清單包含 AWS Step Functions 最常見 AWS Data Pipeline 使用案例的範例實作。

請參閱使用 AWS Step Functions 的其他教學課程範例專案

Amazon MWAA 樣品

下列清單包含 Amazon MWAA 最常見 AWS Data Pipeline 使用案例的範例實作。

請參閱使用 Amazon MWAA 的其他教學課程範例專案