Définition d'une tâche BashOperator
Le site BashOperator
vous permet de spécifier une commande ou un script Shell donné et de l'ajouter à un flux de travail Airflow. Cela peut être un excellent point de départ pour la mise en œuvre d'Airflow dans votre environnement.
Vous avez donc exécuté manuellement des scripts pour nettoyer les données (à l'aide d'un script appelé cleanup.sh
) avant de les transmettre à vos collègues du groupe d'analyse des données. Au fur et à mesure que ces tâches se multiplient, vous vous rendez compte qu'il devient difficile de les exécuter manuellement, sans parler des erreurs et des nouvelles tentatives. Vous souhaitez mettre en œuvre un script simple en tant qu'opérateur Airflow.
Le flux d'air DAG analytics_dag
est déjà défini pour vous et dispose des configurations appropriées.
Cet exercice fait partie du cours
Introduction à Apache Airflow en Python
Instructions
- Importez l'objet
BashOperator
. - Définissez un site
BashOperator
appelécleanup
avec le sitetask_id
decleanup_task
. - Utilisez la commande
cleanup.sh
.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# Import the BashOperator
from airflow.operators.bash import ____
with DAG(dag_id="test_dag", default_args={"start_date": "2024-01-01"}) as analytics_dag:
# Define the BashOperator
cleanup = ____(
task_id=____,
# Define the bash_command
bash_command=____,
)