Sdílet prostřednictvím


Expectations

Tato stránka obsahuje Pythonovou referenční dokumentaci týkající se očekávání pipeline.

Dekorátory pro očekávání deklarují omezení kvality dat u materializovaných zobrazení, streamovaných tabulek nebo dočasných zobrazení vytvořených v rámci kanálu.

Tento dp modul obsahuje šest dekorátorů pro řízení chování očekávání. Následující tabulka popisuje dimenze, na kterých se tyto permutace liší:

Chování Možnosti
Akce při porušení
  • Zahrňte řádek do cílové datové sady. Počet platných a neplatných záznamů se protokoluje spolu s dalšími metrikami datové sady.
  • Před zápisem do cílové datové sady vynechte řádek. Počet vynechaných záznamů se protokoluje spolu s dalšími metrikami datové sady.
  • Okamžitě zastavte aktualizaci. Toto očekávání způsobí selhání jednoho toku a nezpůsobí selhání jiných toků ve vašem kanálu.
Počet očekávání Jedno očekávání nebo více očekávání.

Do datových sad můžete přidat několik dekorátorů očekávání a zajistit tak flexibilitu v striktnosti pro omezení kvality dat.

Při použití expect_all dekorátorů, má každé očekávání vlastní popis a reportuje podrobné metriky.

Syntaxe

Očekávané dekorátory přicházejí za @dp.table(), @dp.materialized_view nebo @dp.temporary_view() dekorátor a před funkcí pro definici datové sady, jak je znázorněno v následujícím příkladu:

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>)

Parametry

Parameter Typ Description
description str Povinné. Popis, který identifikuje omezení. Popisy omezení musí být pro každou datovou sadu jedinečné.
constraint str Povinné. Klauzule constraint je podmíněný příkaz SQL, který se musí vyhodnotit na true nebo false pro každý záznam. Omezení obsahuje skutečnou logiku toho, co se ověřuje. Pokud záznam selže s touto podmínkou, aktivuje se očekávání.

Dekorátory expect_all vyžadují, aby popisy a omezení byly předány jako dict páry klíč-hodnota.