Cloud Composer 3 | Cloud Composer 2 | Cloud Composer 1
En esta página se describe cómo puedes agrupar tareas en tus pipelines de Airflow mediante los siguientes patrones de diseño:
- Agrupar tareas en el gráfico de DAG.
- Activar DAGs secundarios desde un DAG principal.
- Agrupar tareas con el operador
TaskGroup
.
Agrupar tareas en el gráfico de DAG
Para agrupar tareas en determinadas fases de tu flujo de trabajo, puedes usar relaciones entre las tareas de tu archivo DAG.
Veamos un ejemplo:

En este flujo de trabajo, las tareas op-1
y op-2
se ejecutan juntas después de la tarea inicial start
. Para ello, puedes agrupar las tareas con la instrucción
start >> [task_1, task_2]
.
En el siguiente ejemplo se muestra una implementación completa de este DAG:
Activar DAGs secundarios desde un DAG principal
Puedes activar un DAG desde otro DAG con el operador TriggerDagRunOperator
.
Veamos un ejemplo:

En este flujo de trabajo, los bloques dag_1
y dag_2
representan una serie de tareas que se agrupan en un DAG independiente en el entorno de Cloud Composer.
Para implementar este flujo de trabajo, se necesitan dos archivos DAG independientes. El archivo DAG de control tiene el siguiente aspecto:
La implementación del DAG secundario, que se activa mediante el DAG de control, es la siguiente:
Para que el DAG funcione, debes subir ambos archivos DAG en tu entorno de Cloud Composer.
Agrupar tareas con el operador TaskGroup
Puedes usar el operador TaskGroup
para agrupar tareas en tu DAG. Las tareas definidas en un bloque TaskGroup
siguen formando parte del DAG principal.
Veamos un ejemplo:

Las tareas op-1
y op-2
se agrupan en un bloque con el ID taskgroup_1
. Una implementación de este flujo de trabajo sería como el siguiente código: