Compreensão das opções de parâmetros
Você usou alguns métodos diferentes para adicionar modelos aos seus fluxos de trabalho. Considerando as diferenças entre as opções, por que você gostaria de criar tarefas individuais (ou seja, BashOperators) com parâmetros específicos em vez de uma lista de arquivos?
Por exemplo, por que você escolheria
t1 = BashOperator(task_id='task1', bash_command=templated_command, params={'filename': 'file1.txt'}, dag=dag)
t2 = BashOperator(task_id='task2', bash_command=templated_command, params={'filename': 'file2.txt'}, dag=dag)
t3 = BashOperator(task_id='task3', bash_command=templated_command, params={'filename': 'file3.txt'}, dag=dag)
usando um formulário de loop, como
t1 = BashOperator(task_id='task1',
bash_command=templated_command,
params={'filenames': ['file1.txt', 'file2.txt', 'file3.txt']},
dag=dag)
Este exercício faz parte do curso
Introdução ao Apache Airflow em Python
Exercício interativo prático
Transforme a teoria em ação com um de nossos exercícios interativos
