DAG in Airflow
In Airflow, una pipeline è rappresentata come un grafo aciclico diretto, o DAG. I nodi del grafo rappresentano i task che vengono eseguiti. Le connessioni direzionate tra i nodi rappresentano le dipendenze tra i task.
Rappresentare una data pipeline come un DAG ha molto senso, perché alcuni task devono terminare prima che altri possano iniziare. Puoi paragonarlo a una catena di montaggio in una fabbrica di automobili. I task si accumulano in sequenza e ciascuno può dipendere dal completamento dei precedenti. Un DAG fittizio potrebbe essere simile a questo:

Per prima cosa si assembla il telaio, poi la carrozzeria e le gomme, e infine si procede con la verniciatura. Riproduciamo in codice l'esempio qui sopra.
Questo esercizio fa parte del corso
Introduzione al Data Engineering
esercizio interattivo pratico
Prova questo esercizio completando questo codice di esempio.
# Create the DAG
@dag(dag_id="car_factory_simulation",
start_date=datetime(2024, 1, 1),
schedule="____")
def car_factory_simulation():
pass
# Run the DAG
car_factory_simulation()