Definire il DAG
Negli esercizi precedenti hai completato separatamente le fasi di extract, transform e load. Ora tutto è stato riunito in un'unica e ordinata funzione etl() che puoi esplorare nella console.
La funzione etl() estrae i dati grezzi di corsi e valutazioni dai database pertinenti, pulisce i dati corrotti e riempie i valori mancanti, calcola la valutazione media per corso e crea raccomandazioni basate sulle regole decisionali per produrle, e infine carica le raccomandazioni in un database.
Come forse ricordi dal video, etl() accetta un solo argomento: db_engines. Sia etl sia db_engines sono disponibili nel tuo workspace, quindi il task che definisci deve solo chiamare il primo con il secondo.
Questo esercizio fa parte del corso
Introduzione al Data Engineering
Istruzioni dell'esercizio
- Completa la definizione del DAG in modo che venga eseguito ogni giorno. Assicurati di usare la notazione cron.
- Completa il task in modo che chiami la funzione
etl()con i database engines.
esercizio interattivo pratico
Prova questo esercizio completando questo codice di esempio.
# Define the DAG so it runs on a daily basis
@dag(dag_id="recommendations",
start_date=datetime(2024, 1, 1),
schedule="____")
def recommendations():
# Make sure the task calls etl() with the database engines
@task(task_id="recommendations_task")
def recommendations_task():
____(____)
recommendations_task()
# Run the DAG
recommendations()