Passar o contexto sobre a execução do trabalho para a tarefa do trabalho

O senhor pode usar referências de valores dinâmicos para passar o contexto sobre a execução de um trabalho ou tarefa, como o nome do trabalho ou tarefa, o identificador de uma execução ou a hora de início da execução de um trabalho. As referências de valores dinâmicos são variáveis de modelo que são substituídas pelos valores apropriados quando o trabalho é executado. Na execução de um trabalho, a variável de parâmetro tarefa entre chaves duplas é substituída e anexada a um valor de cadeia de caracteres opcional incluído como parte do valor. Por exemplo, para passar um parâmetro chamado MyJobId com um valor de my-job-6 para qualquer execução do Job ID 6, adicione o seguinte parâmetro de tarefa:

{
  "MyJobID": "my-job-{{job.id}}"
}

O conteúdo das chaves duplas não é avaliado como expressões, portanto, o senhor não pode fazer operações ou funções entre chaves duplas.

Os identificadores fornecidos pelo usuário, por exemplo, nomes de tarefa, chave de valor de tarefa ou nomes de parâmetros de trabalho que contenham caracteres especiais devem ser substituídos por caracteres de escape ao redor dos identificadores com marcas de verificação ( ` ` ). Somente caracteres alfanuméricos e sublinhados podem ser usados sem escape.

{
  "VariableWithSpecialChars": "{{job.parameters.`param$@`}}"
}

Os erros de sintaxe nas referências (por exemplo, uma chave ausente) são ignorados e o valor é tratado como uma cadeia de caracteres literal. Por exemplo, {{my.value} é passado como a cadeia de caracteres "{{my.value}". Entretanto, não é permitido inserir uma referência inválida que pertença a um namespace conhecido (por exemplo, {{job.naem}}). Uma mensagem de erro será exibida se uma referência inválida pertencente a um namespace conhecido for inserida na interface do usuário.

Após a conclusão de uma tarefa, o senhor pode ver os valores resolvidos dos parâmetros em Parâmetros na página de detalhes da execução.

Referências de valores suportados

Há suporte para as seguintes referências de valores dinâmicos:

Referência

Descrição

{{job.id}}

O identificador exclusivo atribuído ao trabalho.

{{job.name}}

O nome do trabalho no momento da execução do trabalho.

{{job.run_id}}

O identificador exclusivo atribuído à execução do trabalho.

{{job.repair_count}}

O número de tentativas de reparo na execução do trabalho atual.

{{job.start_time.<argument>}}

Um valor baseado na hora (no fuso horário UTC) em que a execução do trabalho começou. O valor de retorno é baseado na opção argument. Consulte Opções para valores de data e hora.

{{job.parameters.<name>}}

O valor do parâmetro Job-level com o endereço key <name>.

{{job.trigger.type}}

O tipo de acionador da execução do trabalho. Os valores possíveis são periodic, one_time, run_job_task, file_arrival, continuous e table.

{{job.trigger.file_arrival.location}}

Se um acionador de chegada de arquivo estiver configurado para esse trabalho, o valor do local de armazenamento.

{{job.trigger.time.<argument>}}

Um valor baseado na hora (no fuso horário UTC) em que a execução do trabalho foi acionada, arredondado para baixo até o minuto mais próximo para trabalhos com um cron programar. O valor de retorno é baseado na opção argument. Consulte Opções para valores de data e hora.

{{task.name}}

O nome da tarefa atual.

{{task.run_id}}

O identificador exclusivo da execução da tarefa atual.

{{task.execution_count}}

O número de vezes que a tarefa atual foi executada (incluindo novas tentativas e reparos).

{{task.notebook_path}}

O caminho do Notebook da tarefa atual do Notebook.

{{tasks.<task_name>.run_id}}

O identificador exclusivo atribuído à execução da tarefa para <task_name>.

{{tasks.<task_name>.result_state}}

O estado do resultado da tarefa <task_name>. Os valores possíveis são success, failed, excluded, canceled, evicted, timedout, upstream_canceled, upstream_evicted e upstream_failed.

{{tasks.<task_name>.error_code}}

O código de erro da tarefa <task_name> se ocorrer um erro na execução da tarefa. Exemplos de valores possíveis são RunExecutionError, ResourceNotFound e UnauthorizedError. Para uma tarefa bem-sucedida, isso é avaliado como uma cadeia de caracteres vazia.

{{tasks.<task_name>.execution_count}}

O número de vezes que a tarefa <task_name> foi executada (incluindo novas tentativas e reparos).

{{tasks.<task_name>.notebook_path}}

O caminho para o Notebook para a tarefa do Notebook <task_name>.

{{tasks.<task_name>.values.<value_name>}}

O valor da tarefa com o key <value_name> que foi definido pela tarefa <task_name>.

{{workspace.id}}

O identificador exclusivo atribuído ao site workspace.

{{workspace.url}}

O URL do site workspace.

O senhor pode definir essas referências com qualquer tarefa ao criar um trabalho, editar um trabalho ou executar um trabalho com parâmetros diferentes.

O senhor também pode passar parâmetros entre tarefas em um trabalho com valores de tarefa. Veja Share information between tarefa in a Databricks Job.

Opções para valores de data e hora

Use os seguintes argumentos para especificar o valor de retorno das variáveis de parâmetro baseadas em tempo. Todos os valores de retorno são baseados em um registro de data e hora no fuso horário UTC.

Argumento

Descrição

iso_weekday

Retorna um dígito de 1 a 7, representando o dia da semana do carimbo de data/hora.

is_weekday

Retorna true se o carimbo de data/hora estiver em um dia da semana.

iso_date

Retorna a data no formato ISO.

iso_datetime

Retorna a data e a hora no formato ISO.

year

Retorna a parte do ano do carimbo de data/hora.

month

Retorna a parte do mês do carimbo de data/hora.

day

Retorna a parte do dia do carimbo de data/hora.

hour

Retorna a parte da hora do carimbo de data/hora.

minute

Retorna a parte dos minutos do carimbo de data/hora.

second

Retorna a segunda parte do carimbo de data/hora.

timestamp_ms

Retorna o registro de data e hora em milissegundos.

Variáveis de parâmetro obsoletas

As variáveis de parâmetros a seguir estão obsoletas. Embora ainda sejam compatíveis, qualquer novo trabalho ou atualização de um trabalho existente deve usar as [supported value references>(#supported-references). A referência de substituição recomendada está incluída na descrição de cada variável.

Variável

Descrição

{{job_id}}

O identificador exclusivo atribuído a um trabalho. Em vez disso, use job.id.

{{run_id}}

O identificador exclusivo atribuído a uma execução de tarefa. Em vez disso, use task.run_id.

{{start_date}}

A data em que a tarefa execução começar. O formato é yyyy-MM-dd no fuso horário UTC. Em vez disso, use job.start_time.<argument>.

{{start_time}}

O registro de data e hora do início da execução após o site cluster ter sido criado e estar pronto. O formato é milissegundos desde a época do UNIX no fuso horário UTC, conforme retornado por System.currentTimeMillis(). Em vez disso, use job.start_time.<format>.

{{task_retry_count}}

O número de novas tentativas de execução de uma tarefa se a primeira tentativa falhar. O valor é 0 para a primeira tentativa e aumenta a cada nova tentativa. Em vez disso, use task.execution_count.

{{parent_run_id}}

O identificador exclusivo atribuído à execução de um trabalho com várias tarefas. Em vez disso, use job.run_id.

{{task_key}}

O nome exclusivo atribuído a uma tarefa que faz parte de um trabalho com várias tarefas. Em vez disso, use task.name.