Definition der DAG
In den vorherigen Übungen hast du die Phasen Extrahieren, Transformieren und Laden separat gemacht. Jetzt ist das alles in einer praktischen Funktion namens „ etl()
” zusammengefasst, die du in der Konsole finden kannst.
Die Funktion „ etl()
” holt sich Rohdaten zu Kursen und Bewertungen aus den richtigen Datenbanken, bereinigt fehlerhafte Daten und füllt fehlende Werte, berechnet die durchschnittliche Bewertung pro Kurs und erstellt Empfehlungen anhand der Entscheidungsregeln für die Erstellung von Empfehlungen. Zum Schluss lädt sie die Empfehlungen in eine Datenbank.
Wie du vielleicht aus dem Video weißt, nimmt „ etl()
“ ein einziges Argument an: „ db_engines
“. Du kannst das an die Aufgabe weitergeben, indem du „ op_kwargs
“ im „ PythonOperator
“ verwendest. Du kannst ihm ein Wörterbuch übergeben, das als kwargs in der aufrufbaren Funktion ausgefüllt wird.
Diese Übung ist Teil des Kurses
Einführung in das Data Engineering
Anleitung zur Übung
- Mach die DAG-Definition fertig, damit sie jeden Tag läuft. Benutze unbedingt die Cron-Notation.
- Mach die Methode „
PythonOperator()
“ fertig, indem du die richtigen Argumente übergibst. Nebenetl
gibt's auchdb_engines
in deinem Arbeitsbereich.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
# Define the DAG so it runs on a daily basis
dag = DAG(dag_id="recommendations",
schedule_interval="____")
# Make sure `etl()` is called in the operator. Pass the correct kwargs.
task_recommendations = PythonOperator(
task_id="recommendations_task",
python_callable=____,
op_kwargs={"____": ____},
)