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