View a markdown version of this page

AWS Glue ブループリントクラスリファレンス - AWS Glue

AWS Glue ブループリントクラスリファレンス

AWS Glue ブループリント用のライブラリでは、ワークフローレイアウトスクリプトで使用する 3 つのクラス (Job、Crawler、および Workflow) を定義します。

Job クラス

Job クラスは、AWS Glue での ETL ジョブを表します。

必須のコンストラクター引数

Job クラスのコンストラクタに必須な引数を、以下に示します。

引数名 型 説明
Name str ジョブに割り当てる名前。AWS Glue では他のブループリントの実行で作成されたジョブとの区別するため、名前にはランダムに生成されるサフィックスを付けています。
Role str ジョブが実行中に引き受けるロールの Amazon リソースネーム (ARN)。
Command dict API ドキュメントの JobCommand 構造 に掲載されている Job コマンド。
オプションのコンストラクター引数

Job クラスのコンストラクタで、オプションとなっている引数を以下に示します。

引数名 型 説明
DependsOn dict ジョブが依存するワークフローエンティティの一覧。詳細については、DependsOn 引数を使用する を参照してください。
WaitForDependencies str 実行前のジョブが、依存するすべてのエンティティが完了するまで待機するのか、あるいは任意のエンティティが完了することを待つのかを示します。詳細については、WaitForDependencies 引数を使用する を参照してください。ジョブが 1 つのエンティティのみに依存する場合は、この設定は省略します。
(ジョブプロパティ) - Job 構造 API ドキュメント (AWS Glue と CreatedOn 以外)LastModifiedOn の一覧に掲載されている、いずれかのジョブのプロパティ。

Crawler クラス

Crawler クラスは、AWS Glue でのクローラーを表します。

必須のコンストラクター引数

Crawler クラスのコンストラクタに必須な引数を、以下に示します。

引数名 型 説明
Name str AWS Glue は、ランダムに生成されたサフィックスをクローラーの名前に付加することで、異なるブループリントの実行によって作成されたクローラを区別します。
Role str クローラが実行中に引き受ける必要のあるロールの ARN。
Targets dict クロールするターゲットのコレクション。Targets クラスコンストラクターの引数は、API ドキュメントの CrawlerTargets 構造 に定義されています。Targets コンストラクタの引数はすべてオプションです。ただし、少なくとも 1 つを渡す必要があります。
オプションのコンストラクター引数

Crawler クラスのコンストラクタで、オプションとなっている引数を以下に示します。

引数名 型 説明
DependsOn dict クローラが依存するワークフローエンティティのリスト。詳細については、DependsOn 引数を使用する を参照してください。
WaitForDependencies str 実行前のクローラが、依存するすべてのエンティティが完了するまで待機するのか、任意のエンティティが完了することを待つのかを示します。詳細については、WaitForDependencies 引数を使用する を参照してください。クローラが 1 つのエンティティのみに依存する場合は、この設定は省略します。
(クローラのプロパティ) - Crawler 構造 API ドキュメントの AWS Glue の一覧に掲載されている、いずれかのクローラのプロパティ (以下のものを除く)。
  • State

  • CrawlElapsedTime

  • CreationTime

  • LastUpdated

  • LastCrawl

  • Version

Workflow クラス

Workflow クラスは、AWS Glue の ワークフローを表します。ワークフローレイアウトスクリプトは、Workflow オブジェクト。AWS Glue でこのオブジェクトに基づいてワークフローを作成します。

必須のコンストラクター引数

Workflow クラスのコンストラクタに必須な引数を、以下に示します。

引数名 型 説明
Name str ワークフローに割り当てる名前。
Entities Entities ワークフローに含めるエンティティ (ジョブおよびクローラ) のコレクション。Entities クラスのコンストラクタは、引数 Jobs (Job オブジェクトのリスト)、および、Crawlers 引数 (Crawler オブジェクトのリスト) を受け取ります。
オプションのコンストラクター引数

Workflow クラスのコンストラクタで、オプションとなっている引数を以下に示します。

引数名 型 説明
Description str 「Workflow 構造」を参照してください
DefaultRunProperties dict 「Workflow 構造」を参照してください
OnSchedule str cron 式

クラスメソッド

上記の 3 つのクラスには、以下のメソッドが含まれています。

validate()

オブジェクトのプロパティを検証し、エラーが見つかった場合はメッセージを出力して終了します。エラーが発見されない場合は、出力を生成しません。Workflow クラスでは、ワークフロー内のすべてのエンティティで、自分自身を呼び出します。

to_json()

オブジェクトを JSON としてシリアル化します。また、validate() を呼び出します。Workflow クラスでは、この JSON オブジェクトにはジョブとクローラのリストと、ジョブとクローラの依存関係の仕様によって生成されたトリガーのリストが含まれます。