Cloud Composer 3 | Cloud Composer 2 | Cloud Composer 1
Esta página descreve como pode agrupar tarefas nos seus pipelines do Airflow usando os seguintes padrões de design:
- Agrupar tarefas no gráfico DAG.
- Acionar DAGs secundários a partir de um DAG principal.
- Agrupar tarefas com o operador
TaskGroup.
Agrupe tarefas no gráfico DAG
Para agrupar tarefas em determinadas fases do seu pipeline, pode usar relações entre as tarefas no ficheiro DAG.
Considere o seguinte exemplo:
Neste fluxo de trabalho, as tarefas op-1 e op-2 são executadas em conjunto após a tarefa
inicial start. Pode fazê-lo agrupando tarefas com a declaração
start >> [task_1, task_2].
O exemplo seguinte fornece uma implementação completa deste DAG:
Acione DAGs filhos a partir de um DAG principal
Pode acionar um DAG a partir de outro DAG com o operador TriggerDagRunOperator.
Considere o seguinte exemplo:
Neste fluxo de trabalho, os blocos dag_1 e dag_2 representam uma série de tarefas agrupadas num DAG separado no ambiente do Cloud Composer.
A implementação deste fluxo de trabalho requer dois ficheiros DAG separados. O ficheiro DAG de controlo tem o seguinte aspeto:
A implementação do DAG filho, que é acionado pelo DAG de controlo, tem o seguinte aspeto:
Tem de carregar ambos os ficheiros DAG no seu ambiente do Cloud Composer para que o DAG funcione.
Agrupar tarefas com o operador TaskGroup
Pode usar o operador TaskGroup para agrupar tarefas no seu DAG. As tarefas definidas num bloco TaskGroup continuam a fazer parte do DAG principal.
Considere o seguinte exemplo:
As tarefas op-1 e op-2 estão agrupadas num bloco com o ID
taskgroup_1. Uma implementação deste fluxo de trabalho tem o seguinte aspeto: