IniziaInizia gratis

Definire un BashOperator con @task.bash

Un task Bash ti permette di specificare qualsiasi comando o script della shell e aggiungerlo a un workflow di Airflow. Può essere un ottimo punto di partenza per introdurre Airflow nel tuo ambiente.

Finora hai eseguito manualmente alcuni script per ripulire i dati (usando uno script chiamato cleanup.sh) prima di consegnarli ai colleghi del team di Data Analytics. Con l’aumentare dei task assegnati, ti sei reso conto che sta diventando difficile stare al passo con tutto manualmente, per non parlare della gestione di errori e retry. Vorresti implementare un semplice script come operatore di Airflow.

Gli oggetti dag e task di Airflow sono già stati importati.

Questo esercizio fa parte del corso

Introduzione ad Apache Airflow in Python

Visualizza il corso

Istruzioni dell'esercizio

  • Usa il decorator @task.bash per definire il task.
  • Usa come nome del metodo cleanup_task.
  • Fai in modo che il task restituisca cleanup.sh.

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

@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()
Modifica ed esegui il codice