Aan de slagBegin gratis

Gegevens doorgeven met XCom

Je bent een ETL-workflow aan het updaten om een XCom te gebruiken, zodat je informatie makkelijker kunt bijhouden. Daarom moet je de afhankelijkheden tussen de taken in je Dag aanpassen.

Je hebt al vier taken gedefinieerd die je als volgt kunt gebruiken:

  • extract() - Retourneert order_data
  • transform(order_data) - Retourneert samengevatte gegevens
  • load(summary_data) - Retourneert geen XCom-informatie
  • send_report() - Een niet-XCom-taak die notificaties afhandelt

Deze oefening maakt deel uit van de cursus

Introductie tot Apache Airflow in Python

Bekijk cursus

Oefeninstructies

  • Voeg de taak transform in tussen extract() en load() om de keten compleet te maken.
  • Ken het resultaat toe aan een variabele met de naam etl_result.
  • Laat send_report draaien nadat de variabele etl_result is uitgevoerd.

Interactieve oefening met praktijkervaring

Probeer deze oefening door deze voorbeeldcode aan te vullen.

@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()
Code bewerken en uitvoeren