注: 以下の翻訳の正確性は検証されていません。AIPを利用して英語版の原文から機械的に翻訳されたものです。
データ期待値は、データセットの入力または出力に対してコードで定義された一連の要件です。これらの要件、または「期待値」は、データパイプラインの安定性を向上させるためのチェックを作成するために使用できます。データセットのビルドの一部としてデータ期待値のチェックが失敗した場合、ビルドは自動的に中止され、時間とリソースを節約し、下流データの問題を避けることができます。データ期待値は、監視のために Data Health と統合されています。
Python Transformsのドキュメント内のガイドを見て始めるか、利用可能なすべての期待値のリファレンスを参照してください。
データ期待値は、関連するCode Repositoryのデータセットトランスフォームで定義されます。チェックはトランスフォームの入力と出力に適用できます(詳細についてはガイドを参照)。チェックの名前は、単一のトランスフォーム内で一意でなければなりません。
チェックは、その期待値とともに、ビルド時間中に失敗がどのように処理されるかを定義します。チェックが失敗した場合、ビルドは中止されるか、警告とともに再開されます。
チェックは、関連するブランチのCI中に登録されます。保護されたブランチの期待値を変更するには、他のコード変更と同様にプルリクエストが必要になります。
保護されたブランチに変更を加えるときは、デフォルトのブランチに変更をマージする前に、開発ブランチでデータセットをビルドして、データ期待値が満たされることを確認することをお勧めします。
登録されたチェックは、ビルドジョブの一部として実行されます。データ期待値を満たせなかった場合は、Builds application とデータセットの History tab でハイライトされます。チェック定義がエラー時にFAILを示す場合、ジョブステータスは適切なエラーで「中断」となります。ジョブタイムラインでは「期待値」インジケータを見つけることができます。このインジケータをクリックすると、チェック結果と異なる期待値の詳細が表示されます。
事前条件が失敗したとき、トランスフォームの出力が中止されます(事前条件が定義された入力ではなく)。入力データセットのビルドを中止するには、データ期待値を入力データセットトランスフォームの事後条件として定義する必要があります。
各チェックの実行は結果を生成し、Data Health に報告します。最新のデータ期待値の結果は、通知と課題トリガーが設定できるデータセットプレビューアプリケーションの Health tab に表示されます(他のData Healthチェックと同様)。
データセットのチェックは、その名前で一意に識別されることを忘れないでください。チェックの履歴および個々の監視設定は、その名前が変わらない限り維持されます。チェックの名前を変更すると、古いチェックを削除し、その場に新しいチェックを作成するのと同じです。
すべてのチェックは、トランスフォームのインクリメンタルな性質に関係なく、フルデータセットで実行されます。
例えば、インクリメンタルとして実行されるトランスフォームの出力にプライマリキーチェックがあると仮定しましょう。データ期待値のチェックは常に完全なデータセットで実行されるため、新しいプライマリキーが新しいトランザクションに含まれていて(これがインクリメンタルに書き込まれる予定)、そのプライマリキーが既に書き込まれていた場合(以前のトランザクションで)、チェックは失敗します。