Partilhar via


Parametrizar trabalhos

Este artigo fornece uma visão geral do uso de parâmetros com trabalhos e tarefas.

A seguir estão os conceitos fundamentais para entender os parâmetros para trabalhos:

O que você pode fazer com parâmetros?

Adicione parâmetros a trabalhos e tarefas para casos de uso avançados, incluindo o seguinte:

  • Adicione lógica extensível aos ativos de código.
  • Condicionalize execuções.
  • Faça referência a parâmetros comuns em várias tarefas.
  • Use as informações geradas em uma tarefa em outra.
  • Metadados de referência e informações de estado na execução do trabalho.

Qual é a diferença entre parâmetros de trabalho e tarefa?

Os parâmetros de trabalho são pares chave-valor definidos no nível do trabalho. Você pode substituir as configurações padrão para parâmetros de trabalho quando Executar agora com parâmetros diferentes ou acionar uma execução de trabalho usando a API REST. Os parâmetros de trabalho são empurrados para tarefas que usam parâmetros chave-valor. Outras tarefas podem fazer referência a parâmetros de trabalho usando referências de valor dinâmico.

Os parâmetros de tarefa são pares chave-valor de matrizes JSON definidas no nível da tarefa. Cada tipo de tarefa passa valores de tarefa para os ativos de código configurados de forma diferente. Por exemplo, as tarefas do bloco de anotações usam o dbutils.widgets submódulo, enquanto os scripts Python passam valores como argumentos para o script como se ele estivesse sendo chamado da linha de comando. As tarefas a jusante podem referenciar parâmetros de tarefas a partir de tarefas a montante utilizando referências de valor dinâmico.

Nota

Algumas tarefas não têm um campo Parâmetros dedicado, mas permitem referências a valores de tarefas ou referências de valores dinâmicos em outros campos. Consulte Exemplos de comandos dbt parametrizados e Adicionar lógica de ramificação a um trabalho com a tarefa If/else.

Crie fluxos de trabalho usando valores dinâmicos

Os parâmetros de tarefa definidos com valores estáticos só podem ser substituídos atualizando a definição da tarefa. Definir um valor estático para um parâmetro de trabalho é apenas configurar um valor padrão, que você pode substituir quando Executar agora com parâmetros diferentes ou acionar uma execução de trabalho usando a API REST.

Use referências de valor dinâmico ao definir parâmetros de tarefa para implementar padrões como os seguintes:

  • Use um parâmetro de trabalho como o output_table para uma tarefa e o input_table para outra.
  • Capture a saída de uma consulta de bloco de anotações como uma lista e faça um loop sobre ela em um Para cada tarefa.
  • Criação de lógica de bifurcação com base no número de registros processados usando uma tarefa de condição If/else.
  • Consulte parâmetros de outras tarefas.

Consulte O que é uma referência de valor dinâmico?.