注: 以下の翻訳の正確性は検証されていません。AIPを利用して英語版の原文から機械的に翻訳されたものです。
Data Lineage スケジュールエディターでは、新しいスケジュールを作成したり、既存のスケジュールを編集したりできます。また、既存のスケジュールのメトリックを表示したり、スケジュールがデータセットをどのように構築するかを確認することもできます。
以下の手順で、Data Lineage スケジュールエディターに移動し、新しいスケジュールを作成します:
これにより、Data Lineage グラフと、データセットに影響を与える現在のすべてのスケジュールをリスト表示するスケジュールパネルが右側に表示されます。
スケジュールを作成するには、スケジュール作成 ボタンをクリックします。
これにより、スケジュールエディターに移動します。
スケジュールを定義するには、以下のセクションを完了する必要があります。
Data Lineage でスケジュールを作成すると、スケジュールはグラフで設定したブランチ(フォールバックブランチを含む)に適用されます。
ターゲットデータセットは、ビルドの最後のデータセットを指定します。デフォルトでは、これらのデータセットのみがビルドされます。他の設定では、これらのデータセットがビルドされるデータセットのラインの最後になる場合があります。
ターゲットデータセットは、グラフに追加してターゲットとしてマーキングすることで選択できます。
データセットは、Data Lineage ウィンドウの右上で設定したブランチ上でビルドされます。グラフ上のデータセットは、スケジュールによってどのように影響を受けるか、または影響を与えるかによって色分けされます。
除外するデータセットは、ビルドするデータセットを決定するときにグラフトラバーサル中に無視されるデータセットを指定します。無視されるデータセットの上流にあるすべてのデータセットはビルドされません。
トリガーはビルドが実行されるタイミングを指定します。トリガーで定義された条件が満たされたときにビルドが実行されます。
基本的なトリガーは2種類あります:
時間: 時間トリガーは、指定された瞬間に満たされます。
データセットの更新時: プラットフォームで指定されたデータセットの更新が発生したときに満たされます。
トリガーは、より複雑な複合トリガーを作成するために組み合わせることができます。トリガーを組み合わせる方法は、トリガーエディターのメニューから選択できます:
これらのトリガーのいずれか: コンポーネントトリガーのいずれかが満たされると、トリガーが満たされます。
これらのトリガーすべて: コンポーネントトリガーすべてが満たされると、トリガーが満たされます。
高度な設定: コンポーネントトリガーの組み合わせ方を明示的に設定します。
高度な設定が選択されると、コンポーネントトリガーは、2つのトリガーの間に AND
および OR
のキーワードを挿入することで組み合わされます。複合トリガーは、さらに括弧 (
と )
の内部に置くことで組み合わせることができます。
AND
は、コンポーネントトリガーの両方が満たされると、複合トリガーが満たされることを示します。
OR
は、コンポーネントトリガーのいずれかが満たされると、複合トリガーが満たされることを示します。
ビルドタイプは、選択したデータセットをどのようにビルドするかを指定します:
シングルビルド: ターゲットデータセットをビルドします(他のデータセットはビルドされません)。
フルビルド(上流を含む): すべてのターゲットデータセットと、このターゲットの上流のすべてのデータセットをビルドします(除外されたデータセットを除く)。ビルドされるデータセットは、上流の依存関係が変更されると変更される場合があります。
接続ビルド: 入力データセット(除外)とターゲットデータセット(含む)の間のすべてのデータセットをビルドします。データセットが入力データセットとターゲットデータセットの間にあるが、明示的に入力として追加されている場合、スケジュールによってそれでもビルドされます。データセットがターゲットデータセットとして選択されているが、入力データセットからターゲットデータセットへのビルドパスが存在しない場合、ターゲットデータセットはビルドされません。
接続ビルドの場合、ターゲットデータセットと上流データセットを接続するすべてのデータセットは、スケジュールが設定されているブランチ上のジョブスペックパスによって接続されている必要があります。
上記を、データセット D1, ..., D6
があり、データセット D2 の2つの異なるブランチが D3 と D4 の入力として使用される例のデータフローで説明します。マスターブランチ上の接続ビルドスケジュールで、入力が D1 でターゲットが D5 と D6 の場合、D2、D4、D6 のみがビルドしようとします。
これは、マスターブランチ上で入力 D1 からターゲット D6 への接続ビルド選択が、データセット D1 と D6 の間にジョブスペックパスが存在するため、データセット D2、D4、および D6 を選択するからです。しかし、入力 D1 からターゲット D5 への接続ビルド選択は存在せず、マスターブランチに沿ったジョブスペックパスが切断されています。
D1 (master) --> D2 (master) --> D4 (master) --> D6 (master)
|
| D2 (develop) # D2 (開発ブランチ)
|
--> D3 (master) --> D5 (master)
この例でデータセットD3をスケジュールされたビルドに含めるためには、ビルドをフルビルドに変更する必要があります。これにより、D3だけでなく、上流のD5の入力D1も含まれます。または、接続ビルド選択のままにするためには、D2(develop)を入力とし、D3を出力とする変換を編集して、マスターブランチに追加のダミー入力D7を含めることができます。下記のようにです。入力D1とターゲットD5とD6を持つマスターブランチの接続スケジュールビルドは、現在D2、D3、D4、D5、そしてD6をビルドします。
D1 (master) --> D2 (master) --> D4 (master) --> D6 (master)
|
| D2 (develop) // D2 (開発ブランチ)
|
D7 (master) -------> D3 (master) --> D5 (master)
この図は、gitのブランチの流れを示しています。master
ブランチからdevelop
ブランチが分岐し、その後再びmaster
ブランチに統合されています。
接続ビルドスケジュールを利用している場合、スケジュールを含むブランチとは異なるブランチからデータセットを使用している場合、入力とターゲットビルドの間に同じブランチ上の接続ジョブスペックパスが存在しなければならない。これにより、これらのデータセットがビルドに含まれます。
データパイプラインの動的な性質を考慮に入れ、ビルドに含まれるデータセットのセットは、スケジュールがトリガーされるたびに評価されます。ビルドスコープは、スケジュールビルドの境界を定義し、パイプラインの内容が変わっても、これらの境界は固定されたままになります。利用可能なスコープオプションは2つあります:
プロジェクトスコープは、スケジュールが選択したプロジェクト内のデータセットのみで実行されることを保証します。ユーザーの権限が変わってもスケジュールが影響を受けないようにします。このオプションは、ビルドの内容がそれほど変わらない限り、選択したプロジェクト内で実行できなくなる場合が最も信頼性があります(下記参照)。
次の場合、ビルドはプロジェクトスコープにすることができません:
ユーザースコープでは、スケジュールビルドは最後に編集(または作成)したユーザーを代表してトリガーされます。したがって、ビルドには、ユーザーがビルドを許可されたデータセットのみが含まれます。このオプションは、スケジュールされたパイプラインが変更され、プロジェクトスコープが不可能になる可能性がある場合(例えば、データセットが別のプロジェクトに移動され、新しいデータセットがユーザーアカウントで実行する必要があるなど)に最も信頼性があります。
ユーザーが非活動化されるか、ビルドに必要なデータセットへの権限を失った場合、スケジュールビルドの開始に失敗します。ユーザーアカウントでスコープを設定する場合は、アカウントが信頼性のある権限を持っていることを確認し、ユーザーが非活動化される前に所有権を変更することを忘れないでください。
高度な設定では、追加のビルドオプションを指定します:
強制ビルド: ビルドを実行する際に、古さの情報を無視します。すべてのデータセットが古くてもビルドされます。このオプションはほとんど必要ありません。このオプションが必要な稀な例は次のとおりです:
失敗時にビルドを中止: ビルド内の任意のジョブが成功しない場合、すぐにビルドを終了して他のすべてのジョブをキャンセルします。
失敗したジョブの試行回数をカスタマイズ: 失敗したジョブの実行試行回数。再試行されたジョブは同じビルドの一部として実行されます。全ての再試行が行われるか、再試行ができないことを示すエラーが発生するまで、ジョブは失敗とは見なされません。この値を1に設定すると、ジョブは一度しか試行されないため、再試行が防止されます。すべてのタイプの失敗が再試行できるわけではないことに注意してください。スケジュールが実行されるときの再試行回数は、管理者が設定した最大値に制限されます。
ビルドが終了したときに通知を送信: スケジュールされたビルドについては、デフォルトでは通知は送信されません。通知を有効にするには、このオプションを選択します。
スケジュールの定義が完了したら、スケジュールを保存ボタンをクリックします。
これにより、スケジュールページに戻り、保存されたスケジュールが表示されます。