クローラーの実行が完了したときに、AWS Glue ワークフローを使用して自動的にジョブをスタートさせたい。
簡単な説明
クローラーの実行が完了したときにジョブをスタートさせるには、AWS Glue ワークフローと 2 つのトリガーを作成します。トリガーの 1 つはクローラー用、もう 1 つはジョブ用です。この方法では、AWS Glue コンソールのワークフローページからクローラーを開始する必要があります。
注意: AWS Lambda 関数と Amazon EventBridge ルールを使用して、ジョブの実行を自動化することもできます。このオプションを選択すると、Lambda 関数は常にオンになります。Lambda 関数は、スタート場所やスタート時刻に関係なくクローラーをモニタリングします。詳細については、クローラーの実行が完了したときに Lambda 関数を使用して自動的に AWS Glue ジョブをスタートさせる方法を教えてくださいを参照してください。
解決方法
以下のステップを実行する前に、次のものが用意されていることを確認します。
- AWS Glue の抽出、変換、およびロード (ETL) ジョブ
- AWS Glue クローラー
- AWSGlueServiceRole ポリシーが添付されている AWS Glue の AWS Identity and Access Management (IAM) ロール
ワークフローを作成する
- AWS Glue コンソールを開きます。
- ナビゲーションペインで [ワークフロー]、次いで [ワークフローを追加] を選択します。
- ワークフローの名前を入力し、[ワークフローを追加] を選択します。新しいワークフローがワークフローページのリストに表示されます。
クローラーのトリガーを作成する
- ワークフローページで、新しいワークフローを選択し、[グラフ] タブを選択します。
- [トリガーを追加] を選択し、[新しく追加する] タブを選択します。[トリガータイプ] で、[オンデマンド] を選択します。
- [追加] を選択します。トリガーがグラフに表示されます。
- グラフで、[ノードを追加] を選択します。
- [クローラー] タブでクローラーを選択し、[追加] を選択します。
AWS Glue ジョブのトリガーを作成する
- グラフの上の [アクション] メニューで、[トリガーを追加] を選択します。
- [新しく追加する] タブを選択し、次のオプションを選択します: [トリガータイプ] で、[イベント] を選択します。[トリガーロジック] で、[視聴したすべてのイベント後に開始] を選択します。
- [追加] を選択します。トリガーがグラフに表示されます。
- グラフで、先ほど作成したジョブトリガーの左側にある [ノードを追加] を選択します。
- [クローラー] タブでクローラーを選択し、[追加] を選択します。トリガーがグラフに表示されます。
- グラフで、先ほど作成したジョブトリガーの右側にある [ノードを追加] を選択します。
- [ジョブ] タブで、クローラーの実行が完了したときにスタートしたいジョブを選択し、[追加] を選択します。
ワークフローをテストする
- [アクション] メニューで、[ワークフローを追加] ボタンの横にある [実行] を選択します。[最新の実行ステータス] 列が [実行中] に変わります。
- [グラフ] タブをチェックして、ワークフローのステータスを確認します。もしくは、対応するクローラーまたはジョブを開き、実行中であることを確認します。
関連情報
ワークフローは、AWS Glue で手動作成して構築する