Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Use a If/else condition tarefa para adicionar lógica condicional booleana aos gráficos de tarefas. Essas tarefas consistem em um operador booleano e um par de operandos, onde os operandos podem fazer referência ao trabalho ou estado da tarefa usando parâmetros configurados ou dinâmicos ou valores de tarefa. Consulte Parametrizar trabalhos.
Por exemplo, suponha que você tenha uma tarefa nomeada process_records que mantenha uma contagem de registros que não são válidos em um valor chamado bad_records, e deseja ramificar o processamento quando encontrar registros incorretos. Para adicionar essa lógica ao seu fluxo de trabalho, você pode criar uma If/else condition tarefa com uma expressão como {{tasks.process_records.values.bad_records}} > 0. Em seguida, você pode adicionar tarefas dependentes com base nos resultados da condição.
Após uma execução de trabalho contendo uma If/else condition tarefa, pode-se exibir o resultado e os detalhes da avaliação da expressão quando se visualizam os detalhes da execução do trabalho na interface de utilizador. Consulte Exibir detalhes da execução do trabalho.
Note
- Os valores numéricos e não numéricos são tratados de forma diferente, dependendo do operador booleano:
- Os operadores
==e!=executam a comparação de cadeia de caracteres de seus operandos. Por exemplo,12.0 == 12avalia como falso. - Os operadores
>,>=,<e<=efetuam comparações numéricas dos seus operandos. Por exemplo,12.0 >= 12avalia como verdadeiro e10.0 >= 12avalia como falso. - Apenas valores numéricos, de texto e booleanos são permitidos quando se faz referência a valores de tarefa num operando. Qualquer outro tipo faz com que a expressão da condição falhe. Tipos de valores não numéricos são serializados em cadeias de caracteres e são tratados como cadeias de caracteres em
If/else conditionexpressões. Por exemplo, se um valor de tarefa é definido como um valor booleano, ele é serializado para"true"ou"false".
- Os operadores
Configurar uma tarefa If/else
Adicione uma If/else condition tarefa do separador Tarefas na interface de utilizador de Trabalhos, fazendo o seguinte:
-
Adicionar tarefa.
- Insira um nome no campo Nome da tarefa .
- No menu suspenso do Tipo , selecione
If/else condition. - Insira o operando a ser avaliado na primeira caixa de texto Condição . O operando pode fazer referência a qualquer um dos seguintes:
- Uma variável de parâmetro de tarefa, por exemplo,
{{job.parameters.<name>}}. - Uma variável de parâmetro de tarefa.
- Um valor de uma tarefa, por exemplo
{{tasks.<task_name>.values.<value_name>}}.
- Uma variável de parâmetro de tarefa, por exemplo,
- Selecione um operador booleano no menu suspenso.
- Na segunda caixa de texto Condição , insira o valor para avaliar a condição.
- (Opcional) Para configurar tentativas, limiares para a duração da execução ou para o backlog de streaming, ou notificações, consulte Definições avançadas da tarefa.
- Clique em Salvar tarefa.
Para editar, clonar, desativar ou eliminar esta tarefa, consulte Configurar e editar tarefas em Lakeflow Jobs.
Configurar dependências em uma condição If/else
Configurar as dependências da tarefa If/else condition a partir do gráfico de tarefas no separador Tarefas fazendo o seguinte:
- Selecione a
If/else conditiontarefa no gráfico de tarefas e cliqueAdicionar tarefa.
- Insira os detalhes da tarefa. O Depende de campo assume como padrão
<task-name> (true)onde<task-name>é o nome da tarefaIf/else condition.- Selecione
<task-name> (false)para configurar uma tarefa que é executada em uma avaliação de condição falsa.
- Selecione
Você pode configurar várias tarefas para serem executadas em série ou em paralelo com base no resultado de um If/else condition. Considere configurar Run if dependencies se precisar de execuções condicionais com base em falhas de tarefas upstream. Consulte Configurar dependências de tarefas.
Note
Uma If/else condition tarefa falha se a tarefa anterior que fornece o seu valor de condição esteja desativada. Consulte Limitações.
Recursos adicionais
- Tarefa de condição: Defina uma tarefa de condição como código com Pacotes de Automação Declarativa.
- Configurar dependências de tarefas: Definir dependências run-if para execuções condicionais.
- Use valores de tarefas para passar informação entre tarefas: Use valores de tarefas para passar dados entre tarefas.