Skicka data med XCom
Du håller på att uppdatera ett ETL-arbetsflöde för att använda XCom och på så sätt enklare hålla koll på information. Du behöver därför uppdatera beroendena mellan taskerna i din DAG.
Du har redan fyra tasks definierade som fungerar på följande sätt:
extract()– Returnerarorder_datatransform(order_data)– Returnerar sammanfattad dataload(summary_data)– Returnerar ingen XCom-informationsend_report()– En task utan XCom som hanterar aviseringar
Den här övningen är en del av kursen
Introduktion till Apache Airflow i Python
Övningsinstruktioner
- Infoga tasken
transformmellanextract()ochload()för att slutföra kedjan. - Tilldela resultatet till en variabel med namnet
etl_result. - Ange att
send_reportska köras efter variabelnetl_result.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
@dag(start_date=datetime(2026,4,1))
def etl_example():
# Chain extract, transform, and load, assigning the result
____ = load(____(extract()))
# Run send_report after the ETL tasks
etl_result ____ ____()
etl_example()