このページには、パイプラインの期待に関する Python リファレンス ドキュメントが含まれています。
期待デコレーターは、具体化されたビュー、ストリーミング テーブル、またはパイプラインで作成された一時ビューに対するデータ品質制約を宣言します。
dp モジュールには、期待される動作を制御するための 6 つのデコレーターが含まれています。 次の表では、これらの順列が異なるディメンションについて説明します。
| 行動 | オプション |
|---|---|
| 違反に対するアクション |
|
| 期待値の数 | 1 つの期待値または複数の期待値。 |
データセットに複数の期待デコレーターを追加できるため、データ品質の制約に対する厳密さの柔軟性を提供できます。
expect_allデコレーターを使用する場合、各期待値には独自の説明があり、詳細なメトリックがレポートされます。
構文
期待されるデコレーターは、次の例のように、 @dp.table()、 @dp.materialized_view 、または @dp.temporary_view() デコレーターの後、およびデータセット定義関数の前に来ます。
from pyspark import pipelines as dp
@dp.table()
@dp.expect(description, constraint)
@dp.expect_or_drop(description, constraint)
@dp.expect_or_fail(description, constraint)
@dp.expect_all({description: constraint, ...})
@dp.expect_all_or_drop({description: constraint, ...})
@dp.expect_all_or_fail({description: constraint, ...})
def <function-name>():
return (<query>)
パラメーター
| パラメーター | タイプ | Description |
|---|---|---|
description |
str |
必須。 制約を識別する説明。 制約の説明は、データセットごとに一意である必要があります。 |
constraint |
str |
必須。 制約句は、各レコードの true または false に評価する必要がある SQL 条件付きステートメントです。 制約には、検証対象の実際のロジックが含まれています。 レコードがこの条件で不合格になった場合は、期待値がトリガーされます。 |
expect_allデコレーターでは、キーと値のペアのdictとして説明と制約を渡す必要があります。