Great Expectations ermoeglicht es, Erwartungen an Ihre Daten zu definieren, zu testen und zu dokumentieren. Es generiert automatisch Dokumentation und integriert sich mit Airflow, Spark und pandas.
Warum Datenqualitaet validieren¶
Great Expectations definiert Regeln und ueberprueft sie automatisch bei jedem Pipeline-Lauf.
import great_expectations as gx
context = gx.get_context()
validator = context.get_validator(batch_request=batch_request)
validator.expect_column_values_to_be_unique("order_id")
validator.expect_column_values_to_not_be_null("customer_id")
validator.expect_column_values_to_be_between(
"total_czk", min_value=0, max_value=10_000_000
)
validator.save_expectation_suite()
Integration mit Airflow¶
def validate_data():
context = gx.get_context()
result = context.run_checkpoint("daily_orders")
if not result.success:
raise ValueError("Datenqualitaetspruefung fehlgeschlagen!")
extract >> validate_task >> transform
Expectation-Typen und Data Docs¶
Great Expectations bietet Hunderte integrierter Expectations — von grundlegenden (not null, unique, between) bis hin zu fortgeschrittenen (Verteilungstests, Regex-Muster, referenzielle Integritaet zwischen Tabellen). Eigene Expectations koennen als Python-Klassen erstellt werden.
Data Docs ist eine automatisch generierte HTML-Dokumentation, die Validierungsergebnisse visualisiert — Rot/Gruen-Indikatoren fuer jede Expectation, Spaltenstatistiken und historische Trends. In einer CI/CD-Pipeline fuehren Sie die Validierung als Gate aus — wenn Daten die Erwartungen nicht erfuellen, schlaegt die Pipeline fehl und schlechte Daten gelangen nicht in die Produktionsschicht. Der Profiler analysiert automatisch vorhandene Daten und schlaegt Expectations vor, was die anfaengliche Einrichtung erheblich beschleunigt.
Zusammenfassung¶
Great Expectations ist der Standard fuer automatisierte Datenvalidierung in Python-Pipelines.