Aan de slagGa gratis aan de slag

Een BashOperator definiëren met @task.bash

Met een Bash-taak kun je elke shellopdracht of elk script opgeven en toevoegen aan een Airflow-workflow. Dit is een goede manier om Airflow in je omgeving te introduceren.

Je hebt tot nu toe handmatig scripts gedraaid om data op te schonen (met een script genaamd cleanup.sh) voordat je die doorzet naar je collega’s van de Data Analytics-groep. Nu je meer van dit soort taken krijgt, merk je dat het lastig wordt om alles handmatig bij te houden, laat staan om met fouten of retries om te gaan. Je wilt een eenvoudig script als een Airflow-operator implementeren.

De Airflow-dag- en taakobjecten zijn al geïmporteerd.

Deze oefening maakt deel uit van de cursus

Introductie tot Apache Airflow in Python

Cursus bekijken

Oefeninstructies

  • Gebruik de decorator @task.bash om de taak te definiëren.
  • Gebruik de methodenaam cleanup_task.
  • Laat de taak cleanup.sh retourneren.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

@dag(
  dag_id='analytics_dag', 
  start_date=datetime(2026,1,1)
)
def analytics_dag():
  # Specify a Bash task
  @____
  def ____():
    return '____'
  
  # Run the task
  cleanup_task()

analytics_dag()
Code bewerken en uitvoeren