Aan de slagBegin gratis

Retries toevoegen

Je hebt gemerkt dat één specifieke Dag vaak faalt bij een taak die gegevens uit een bepaalde bron extraheert. Frustrerend genoeg lijkt het uitvoeren van de taak een paar minuten later het probleem op te lossen. Na te hebben geleerd over de retry-functionaliteit in Airflow Dags, besluit je retries op deze taak te implementeren zodat je hem niet meer handmatig hoeft te herstarten.

De dag, task en timedelta zijn al voor je geïmporteerd.

Deze oefening maakt deel uit van de cursus

Introductie tot Apache Airflow in Python

Bekijk cursus

Oefeninstructies

  • Stel de taak extract_data zo in dat hij 3 keer opnieuw probeert voordat hij faalt.
  • Voeg een vertraging van 10 minuten toe tussen retries voor de taak extract_data.

Interactieve oefening met praktijkervaring

Probeer deze oefening door deze voorbeeldcode aan te vullen.

@dag(schedule="@daily", start_date=datetime(2026, 5, 1))
def etl_pipeline():

  # Set retries and retry delay on extract_data
  @task(____=3, ____=____(minutes=10))
  def extract_data():
    print("Extracting data from source...")
  
  @task()
  def process_source_data():
    print("Now processing data...")

  extract_data() >> process_source_data()
  
etl_pipeline()
Code bewerken en uitvoeren