我想使用 AWS Glue 工作流程以在爬蟲程式執行完成時自動啟動任務。
簡短描述
若要在爬蟲程式執行完成時啟動任務,請建立 AWS Glue 工作流程和兩個觸發條件:一個用於爬蟲程式,另一個用於任務。此方法需要您從 AWS Glue 主控台的工作流程頁面啟動爬蟲程式。
**注意:**您也可以使用 AWS Lambda 函數和 Amazon EventBridge 規則來自動執行任務。選擇此選項時,Lambda 函數始終處於開啟狀態。無論您在何處或何時啟動此函數,它都會監控爬蟲程式。如需詳細資訊,請參閱如何使用 Lambda 函數在爬蟲程式執行完成時自動啟動 AWS Glue 任務?
解決方法
在完成下列步驟之前,請確保您具有:
- AWS Glue 擷取、轉換和載入 (ETL) 任務
- AWS Glue 爬蟲程式
- 適用於 AWS Glue 的 AWS Identity and Access Management (IAM) 角色,該角色已連接 AWSGlueServiceRole 政策
建立工作流程
- 開啟 AWS Glue 主控台。
- 在導覽窗格中,選擇 Workflows(工作流程),然後選擇 Add workflow(新增工作流程)。
- 輸入工作流程的名稱,然後選擇 Add workflow(新增工作流程)。新的工作流程會顯示在工作流程頁面上的清單中。
為爬蟲程式建立觸發條件
- 在工作流程頁面上,選取新的工作流程,然後選擇 Graph(圖表)標籤。
- 選擇 Add trigger(新增觸發條件),然後選擇 Add new(新增)標籤。針對觸發條件類型,選擇 On demand(隨需)。
- 選擇 Add(新增)。觸發條件會顯示在圖表上。
- 在圖表上,選擇 Add node(新增節點)。
- 在 Crawlers(爬蟲程式)標籤上,選取您的爬蟲程式,然後選擇 Add(新增)。
為 AWS Glue 任務建立觸發條件
- 在圖表上面的 Action(動作)功能表上,選擇 Add trigger(新增觸發條件)。
- 選擇 Add new (新增)標籤,然後選取下列選項: 針對觸發條件類型,選擇 Event(事件)。針對觸發條件邏輯,選擇 Start after ALL watched event(在所有已監看事件後開始)。
- 選擇 Add(新增)。觸發條件會顯示在圖表上。
- 在圖表上,在您剛建立的任務觸發條件的左側,選擇 Add node(新增節點)。
- 在 Crawlers(爬蟲程式)標籤上,選取您的爬蟲程式,然後選擇 Add(新增)。觸發條件會顯示在圖表上。
- 在圖表上,在您剛建立的任務觸發條件的右側,選擇 Add node(新增節點)。
- 在 Jobs(任務)標籤上,選取在爬蟲程式執行完成時要啟動的任務,然後選擇 Add(新增)。
測試工作流程
- 在 Actions(動作)功能表上,在 Add workflow(新增工作流程)按鈕旁邊,選擇 Run(執行)。上次執行狀態欄會變更為執行中。
- 檢查 Graph(圖表)標籤以查看工作流程的狀態。或者,開啟對應的爬蟲程式或任務,以確認它正在執行。
相關資訊
在 AWS Glue 中手動建立和建置工作流程