我如何使用 AWS Glue 工作流在爬网程序运行完成时自动启动作业?

上次更新时间:2020 年 3 月 13 日

我想要使用 AWS Glue 工作流以在爬网程序运行完成时自动启动作业。该如何操作?

简短描述

要在爬网程序运行完成时启动作业,请创建一个 AWS Glue 工作流和两个触发器:一个用于爬网程序,一个用于作业。此方法需要您从 AWS Glue 控制台上的工作流页面启动爬网程序。

注意:您还可以使用 AWS Lambda 函数和 Amazon CloudWatch Events 规则自动化作业运行。当您选择此选项时,Lambda 函数始终处于开启状态。它将监控爬网程序,无论您从何处或何时启动它。有关更多信息,请参阅我如何使用 Lambda 函数在爬网程序运行完成时自动启动 AWS Glue 作业?

解决方法

在完成以下步骤之前,请确保您拥有:

AWS Glue 提取、转换和加载 (ETL) 作业。 AWS Glue 爬网程序。 适用于在其中附加了 AWSGlueServiceRole 策略的 AWS Glue 的 AWS Identity and Access Management (IAM) 角色。

创建工作流

    打开 AWS Glue 控制台。 在导航窗格中,选择工作流,然后选择添加工作流。 输入工作流的名称,然后选择添加工作流。新工作流将显示在工作流页面上的列表中。

为爬网程序创建触发器

    工作流页面上,选择您的新工作流,然后选择图表选项卡。 选择添加触发器,然后选择新增选项卡。对于触发器类型,选择按需。 选择添加。触发器显示在图表上。 在图表中,选择添加节点。 在爬网程序选项卡中,选择爬网程序,然后选择添加

为 AWS Glue 作业创建触发器

    在图表上方的操作菜单上,选择添加触发器。 选择新增选项卡,然后选择以下选项:对于触发器类型,选择事件。对于触发器逻辑,选择在 ALL 监视事件后开始。 选择添加。触发器显示在图表上。 在图表上您刚创建的作业触发器的左侧,选择添加节点。 在爬网程序选项卡中,选择爬网程序,然后选择添加。触发器显示在图表上。 在图表上您刚创建的作业触发器的右侧,选择添加节点。 在作业 选项卡上,选择要在爬网程序运行完成时启动的作业,然后选择添加

测试工作流

    操作菜单上添加工作流按钮旁边,选择运行上次运行状态列将更改为正在运行。 检查图表选项卡以查看工作流的状态。或者,打开相应的爬网程序或作业,以确认它正在运行。