Middle
Qu'est-ce qu'un DAG dans Airflow?
sobes.tech IA
Réponse de l'IA
Un DAG (Graph Orienté Acyclique) dans Apache Airflow est une structure qui décrit la séquence des tâches (tasks) et leurs dépendances sous forme d’un graphe orienté acyclique.
Chaque sommet du graphe représente une tâche, et les arêtes indiquent l’ordre d’exécution : la tâche B ne peut commencer qu’après la réussite de la tâche A, s’il existe une arête de A à B.
Principales caractéristiques du DAG dans Airflow :
- Orienté — les tâches suivent une direction spécifique, reflétant le flux de données ou de processus.
- Acyclique — il n’y a pas de cycles, pour éviter les répétitions infinies.
Exemple d’un DAG simple en Python dans Airflow :
from airflow import DAG
from airflow.operators.bash import BashOperator
from datetime import datetime
default_args = {'start_date': datetime(2024, 1, 1)}
dag = DAG('exemple_dag', default_args=default_args, schedule_interval='@daily')
# Définir les tâches
start = BashOperator(task_id='start', bash_command='echo Start', dag=dag)
process = BashOperator(task_id='process', bash_command='echo Processing', dag=dag)
end = BashOperator(task_id='end', bash_command='echo End', dag=dag)
# Définir les dépendances
start >> process >> end
Ainsi, le DAG dans Airflow est une façon de décrire et d’automatiser des processus de travail complexes avec un ordre d’exécution clairement défini.