編排磚工作負載在AWS管理工作流為Apache氣流
2022年1月27日 在合作夥伴
在這個博客中,我們探索如何利用磚的強大工作API與亞馬遜Apache氣流(MWAA)和集成管理與監測監控有向無環圖(DAG) Databricks-based任務。此外,我們將展示如何創建警報基於DAG性能指標。
在我們進入入門的指導,讓我們快速了解磚工作編製和亞馬遜成功的氣流(MWAA) ?
磚編排和警報
工作編排磚是一個完全集成的功能。beplay体育app下载地址客戶可以使用API的工作或UI創建和管理工作和功能,如電子郵件警報監測。與這個強大的由API驅動方法,磚的工作可以安排任何一個API(例如,把數據從一個CRM)。磚編排可以支持工作與單個或多個任務的選擇以及新添加的工作三角洲生活表。
亞馬遜成功的氣流
亞馬遜管理工作流為Apache氣流(MWAA)是一個為Apache氣流編排管理服務。MWAA管理開源Apache氣流平台客戶代表與安全、可用性和可伸縮性的AWS。beplay体育app下载地址Beplay体育安卓版本MWAA給客戶額外的好beplay体育app下载地址處與AWS服務輕鬆集成,通過預先存在的各種各樣的第三方服務插件,允許客戶創建複雜的數據處理管道。
高層架構圖
我們將創建一個簡單的DAG啟動一個磚集群並執行一個筆記本。MWAA監控執行。注意:我們有一個簡單的工作定義,但MWAA可以編排各種複雜的工作負載。
設置環境
博客假設您可以訪問數據磚工作區。注冊一個免費的在這裏,配置一個磚集群。此外,創建一個API牌MWAA用於配置連接。
創建一個遵循這些MWAA環境指令。
如何創建一個磚連接
第一步是配置在MWAA磚連接。
例子DAG
下上傳DAG到S3 bucket文件夾指定在創建MWAA環境。你DAG會自動出現在MWAA UI。
氣流DAG的下麵是一個例子,這創造了新的磚工作的集群配置,磚筆記本的任務,並提交磚的筆記本為執行任務。
從氣流進口DAG從airflow.providers.databricks.operators.databricks進口DatabricksSubmitRunOperator, DatabricksRunNowOperator從datetime進口datetime, timedelta#為提交運行操作符定義參數new_cluster = {“spark_version”:“7.3.x-scala2.12”,“num_workers”:2,“node_type_id”:“i3.xlarge”,“aws_attributes”:{“instance_profile_arn”:“攻擊:aws:我::XXXXXXX: instance-profile / databricks-data-role”}}
notebook_task = {“notebook_path”:' /用戶/(電子郵件保護)/測試”,}#定義參數運行現在運營商notebook_params = {“變量”:5}
default_args = {“主人”:“氣流”,“depends_on_past”:假,“email_on_failure”:假,“email_on_retry”:假,“重試”:1,“retry_delay”:timedelta(分鍾=2)}與DAG (“databricks_dag”,start_date = datetime (2021年,1,1),schedule_interval =“@daily”,醬=假,default_args = default_args)作為dag:
opr_submit_run = DatabricksSubmitRunOperator (task_id =“submit_run”,databricks_conn_id =“databricks_default”,new_cluster = new_cluster,notebook_task = notebook_task)opr_submit_run
從GitHub獲取文件的最新版本鏈接。
觸發MWAA DAG。
一旦觸發你可以看到工作集群在磚集群UI頁麵。
故障排除
亞馬遜MWAA使用亞馬遜CloudWatch氣流日誌。這些都是有用的故障排除DAG失敗。
監測指標和警報
接下來,我們創建一個指標來監測DAG的成功完成。亞馬遜MWAA支持許多指標。
我們使用TaskInstanceFailures創建警報。
對於閾值我們選擇零(即。,we want to be notified when there are any failures over a period of one hour).
最後,我們選擇一個電子郵件通知。
這裏有一個例子在DAG失敗時生成的監測電子郵件通知。
你收到這封郵件,因為亞馬遜監測報警“DatabricksDAGFailure”在美國東弗吉尼亞(n)地區已進入報警狀態,因為“閾值了
結論
在這個博客中,我們展示了如何創建一個氣流DAG創建,配置,並提交一個新的磚工作的集群,磚筆記本的任務,在磚和筆記本的任務執行。我們利用MWAA的開箱即用的集成監測監控我們的示例工作流和有故障時接收通知。
接下來是什麼
- 開始你的磚在AWS 14天的免費試用
- 試著亞馬遜Apache氣流工作流管理(MWAA)