Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Esta página fornece informações sobre como definir tarefas de trabalho nos Pacotes de Ativos do Databricks. Para obter informações sobre tarefas de trabalho, consulte Configurar e editar tarefas em Trabalhos do Lakeflow.
Importante
Os campos de trabalho git_source e de tarefa source definidos como GIT não são recomendados para pacotes, pois os caminhos relativos locais podem não apontar para o mesmo conteúdo no repositório Git. Os pacotes esperam que um trabalho implantado tenha os mesmos arquivos que a cópia local de onde ele foi implantado.
Em vez disso, clone o repositório localmente e configure seu projeto de pacote nesse repositório, para que a origem das tarefas seja o espaço de trabalho.
Configurar tarefas
Defina tarefas para um trabalho em um pacote na tasks chave para a definição do trabalho. Exemplos de configuração de tarefa para os tipos de tarefa disponíveis estão na seção Configurações da tarefa. Para obter informações sobre como definir um trabalho em um pacote, consulte job.
Dica
Para gerar rapidamente a configuração de recursos para um trabalho existente usando a CLI do Databricks, você pode usar o comando bundle generate job. Consulte comandos de agrupamento.
Para definir valores de tarefa, a maioria dos tipos de tarefas possui parâmetros específicos de tarefas, mas você também pode definir parâmetros de trabalho que são passados para tarefas. Há suporte para referências de valor dinâmico para parâmetros de trabalho, que permitem a passagem de valores específicos para a execução do trabalho entre tarefas. Para obter informações completas sobre como passar valores de tarefa por tipo de tarefa, consulte Detalhes por tipo de tarefa.
Você também pode substituir as configurações gerais de tarefa de trabalho com configurações para um workspace de destino. Consulte Substituir com as configurações de destino.
A configuração de exemplo a seguir define um trabalho com duas tarefas de notebook e passa um valor de tarefa da primeira tarefa para a segunda tarefa.
resources:
jobs:
pass_task_values_job:
name: pass_task_values_job
tasks:
# Output task
- task_key: output_value
notebook_task:
notebook_path: ../src/output_notebook.ipynb
# Input task
- task_key: input_value
depends_on:
- task_key: output_value
notebook_task:
notebook_path: ../src/input_notebook.ipynb
base_parameters:
received_message: '{{tasks.output_value.values.message}}'
O output_notebook.ipynb contém o código a seguir, que define um valor de tarefa para a message chave:
# Databricks notebook source
# This first task sets a simple output value.
message = "Hello from the first task"
# Set the message to be used by other tasks
dbutils.jobs.taskValues.set(key="message", value=message)
print(f"Produced message: {message}")
Recupera input_notebook.ipynb o valor do parâmetro received_message, que foi definido na configuração da tarefa:
# This notebook receives the message as a parameter.
dbutils.widgets.text("received_message", "")
received_message = dbutils.widgets.get("received_message")
print(f"Received message: {received_message}")
Configurações de tarefa
Esta seção contém configurações e exemplos para cada tipo de tarefa de trabalho.
Tarefa limpar bloco de anotações de sala
A tarefa de notebook de sala limpa executa um notebook de salas limpas quando o campo clean_rooms_notebook_task está presente. Para obter informações sobre salas limpas, consulte o que são salas limpas do Azure Databricks?.
As chaves a seguir estão disponíveis para uma tarefa de notebook de salas limpas. Para obter a definição de objeto da API REST correspondente, consulte clean_rooms_notebook_task.
| Key | Tipo | Description |
|---|---|---|
clean_room_name |
String | Obrigatório A sala limpa à qual o bloco de anotações pertence. |
etag |
String | Soma de verificação para validar a atualidade do recurso do notebook. Ele pode ser obtido por meio da chamada à operação de obtenção de recursos de sala limpa. |
object |
Map | Parâmetros base a serem usados para o trabalho de notebook de sala limpa. |
notebook_name |
String | Obrigatório Nome do bloco de anotações que está sendo executado. |
Tarefa condicional
O condition_task permite adicionar uma tarefa com a lógica condicional if/else ao seu trabalho. A tarefa avalia uma condição que pode ser usada para controlar a execução de outras tarefas. A tarefa de condição não requer que um cluster seja executado e não dá suporte a novas tentativas ou notificações. Para obter mais informações sobre a tarefa de condição if/else, consulte Adicionar lógica de ramificação a um trabalho com a tarefa If/else.
As chaves a seguir estão disponíveis para uma tarefa condicional. Para obter a definição de objeto da API REST correspondente, consulte condition_task.
| Key | Tipo | Description |
|---|---|---|
left |
String | Obrigatório O operando esquerdo da condição. Pode ser um valor de cadeia de caracteres ou um estado de trabalho ou uma referência de valor dinâmico, como {{job.repair_count}} ou {{tasks.task_key.values.output}}. |
op |
String | Obrigatório O operador a ser usado para comparação. Os valores válidos são: EQUAL_TO, , NOT_EQUAL, GREATER_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN, . LESS_THAN_OR_EQUAL |
right |
String | Obrigatório O operando direito da condição. Pode ser um valor de cadeia de caracteres ou um estado de trabalho ou uma referência de valor dinâmico. |
Exemplos
O exemplo a seguir contém uma tarefa de condição e uma tarefa de notebook, em que a tarefa do notebook só é executada se o número de reparos de trabalho for menor que 5.
resources:
jobs:
my-job:
name: my-job
tasks:
- task_key: condition_task
condition_task:
op: LESS_THAN
left: '{{job.repair_count}}'
right: '5'
- task_key: notebook_task
depends_on:
- task_key: condition_task
outcome: 'true'
notebook_task:
notebook_path: ../src/notebook.ipynb
Tarefa do painel de controle
Você usa essa tarefa para atualizar um painel e enviar um instantâneo aos assinantes. Para obter mais informações sobre dashboards em conjuntos, consulte o dashboard.
As chaves a seguir estão disponíveis para uma tarefa de painel. Para obter a definição de objeto da API REST correspondente, consulte dashboard_task.
| Key | Tipo | Description |
|---|---|---|
dashboard_id |
String | Obrigatório O identificador do painel a ser atualizado. O painel já deve existir. |
subscription |
Map | A configuração de assinatura para o envio da captura de tela do painel. Cada objeto de assinatura pode especificar as configurações de destino para onde enviar instantâneos após a conclusão da atualização do painel. Consulte a assinatura. |
warehouse_id |
String | O ID do depósito para executar o painel de controle para o cronograma. Se não for especificado, o warehouse padrão do painel será usado. |
Exemplos
O exemplo a seguir adiciona uma tarefa de painel a um trabalho. Quando o trabalho é executado, o painel com a ID especificada é atualizado.
resources:
jobs:
my-dashboard-job:
name: my-dashboard-job
tasks:
- task_key: my-dashboard-task
dashboard_task:
dashboard_id: 11111111-1111-1111-1111-111111111111
tarefa dbt
Use essa tarefa para executar um ou mais comandos dbt. Para obter mais informações sobre o dbt, consulte Conectar-se ao dbt Cloud.
As chaves a seguir estão disponíveis para uma tarefa dbt. Para obter a definição de objeto da API REST correspondente, consulte dbt_task.
| Key | Tipo | Description |
|---|---|---|
catalog |
String | O nome do catálogo a ser usado. O valor do catálogo somente poderá ser especificado se um warehouse_id for especificado. Esse campo requer dbt-databricks >= 1,1,1. |
commands |
Sequence | Obrigatório Uma lista de comandos dbt a serem executados em sequência. Cada comando deve ser um comando dbt completo (por exemplo, , dbt deps, dbt seed, dbt run, dbt test). Um máximo de até 10 comandos pode ser fornecido. |
profiles_directory |
String | O caminho para o diretório que contém o arquivo dbt profiles.yml. Só poderá ser especificado se não houver warehouse_id especificado. Se nenhum warehouse_id for especificado e essa pasta não for definida, o diretório raiz será usado. |
project_directory |
String | O caminho para o diretório que contém o projeto dbt. Se não for especificado, o padrão será a pasta raiz do repositório ou do diretório do espaço de trabalho. Para projetos armazenados no workspace do Databricks, o caminho deve ser absoluto e começar com uma barra. Para projetos em um repositório remoto, o caminho deve ser relativo. |
schema |
String | O esquema para gravar. Esse parâmetro só é usado quando um warehouse_id também é fornecido. Se não for fornecido, o esquema padrão será usado. |
source |
String | O tipo de local do projeto dbt. Os valores válidos são WORKSPACE e GIT. Quando definido como WORKSPACE, o projeto será recuperado do workspace do Databricks. Quando definido como GIT, o projeto será recuperado de um repositório Git definido em git_source. Se estiver vazia, a tarefa usará GIT se git_source estiver definida e WORKSPACE de outra forma. |
warehouse_id |
String | O ID do SQL Warehouse a ser usado para executar comandos dbt. Se não for especificado, o warehouse padrão será usado. |
Exemplos
O exemplo a seguir adiciona uma tarefa dbt a um trabalho. Essa tarefa dbt usa o SQL Warehouse especificado para executar os comandos dbt especificados.
Para obter a ID de um sql warehouse, abra a página de configurações do SQL Warehouse e copie a ID encontrada entre parênteses após o nome do warehouse no campo Nome na guia Visão Geral .
Dica
Os Pacotes de Ativos do Databricks também incluem um modelo de projeto dbt-sql que define um trabalho com uma tarefa dbt, bem como perfis dbt para trabalhos dbt implantados. Para obter informações sobre modelos de Pacotes de Ativos do Databricks, consulte modelos de pacote padrão.
resources:
jobs:
my-dbt-job:
name: my-dbt-job
tasks:
- task_key: my-dbt-task
dbt_task:
commands:
- 'dbt deps'
- 'dbt seed'
- 'dbt run'
project_directory: /Users/someone@example.com/Testing
warehouse_id: 1a111111a1111aa1
libraries:
- pypi:
package: 'dbt-databricks>=1.0.0,<2.0.0'
Para cada tarefa
for_each_task permite que você adicione uma tarefa com um loop para cada loop ao seu trabalho. A tarefa executa uma tarefa aninhada para cada entrada fornecida. Para obter mais informações sobre o for_each_task, consulte Usar uma For each tarefa para executar outra tarefa em um loop.
As chaves a seguir estão disponíveis para um for_each_task. Para obter a definição de objeto da API REST correspondente, consulte for_each_task.
| Key | Tipo | Description |
|---|---|---|
concurrency |
Integer | O número máximo de iterações de tarefas que podem ser executadas simultaneamente. Se não for especificado, todas as iterações poderão ser executadas em paralelo sujeitas aos limites de cluster e workspace. |
inputs |
String | Obrigatório Os dados de entrada do loop. Pode ser uma cadeia de caracteres JSON ou uma referência a um parâmetro de matriz. Cada elemento na matriz será passado para uma iteração da tarefa aninhada. |
task |
Map | Obrigatório Definição de tarefa aninhada a ser executada para cada entrada. Esse objeto contém a especificação de tarefa completa, incluindo task_key e o tipo de tarefa (por exemplo, , notebook_tasketc python_wheel_task.). |
Exemplos
O exemplo a seguir adiciona uma for_each_task a um trabalho, em que ele faz um loop sobre os valores de outra tarefa e os processa.
resources:
jobs:
my_job:
name: my_job
tasks:
- task_key: generate_countries_list
notebook_task:
notebook_path: ../src/generate_countries_list.ipnyb
- task_key: process_countries
depends_on:
- task_key: generate_countries_list
for_each_task:
inputs: '{{tasks.generate_countries_list.values.countries}}'
task:
task_key: process_countries_iteration
notebook_task:
notebook_path: ../src/process_countries_notebook.ipnyb
Tarefa JAR
Use essa tarefa para executar um JAR. Você pode referenciar bibliotecas JAR locais ou aquelas em um espaço de trabalho, um volume do Catálogo do Unity ou um local de armazenamento em nuvem externo. Consulte o arquivo JAR (Java ou Scala).
Para obter detalhes sobre como compilar e implantar arquivos JAR do Scala em um cluster habilitado para Catálogo do Unity no modo de acesso padrão, consulte Tutorial: Executar código Scala na computação sem servidor.
As chaves a seguir estão disponíveis para uma tarefa JAR. Para obter a definição de objeto da API REST correspondente, consulte jar_task.
| Key | Tipo | Description |
|---|---|---|
jar_uri |
String | Preterido. O URI do JAR que será executado. Há suporte para DBFS e caminhos de armazenamento em nuvem. Esse campo foi preterido e não deve ser usado. Em vez disso, use o libraries campo para especificar dependências JAR. |
main_class_name |
String | Obrigatório O nome completo da classe que contém o método principal a ser executado. Essa classe deve estar contida em um JAR fornecido como uma biblioteca. O código deve ser usado SparkContext.getOrCreate para obter um contexto do Spark; caso contrário, as execuções do trabalho falharão. |
parameters |
Sequence | Os parâmetros passados para o método principal. Use variáveis de parâmetro de tarefa para definir parâmetros que contêm informações sobre execuções de trabalho. |
Exemplos
O exemplo a seguir adiciona uma tarefa do JAR a um trabalho. O caminho do JAR leva a um local de volume.
resources:
jobs:
my-jar-job:
name: my-jar-job
tasks:
- task_key: my-jar-task
spark_jar_task:
main_class_name: org.example.com.Main
libraries:
- jar: /Volumes/main/default/my-volume/my-project-0.1.0-SNAPSHOT.jar
Tarefa do notebook
Use essa tarefa para executar um notebook. Consulte Tarefa de Notebook para trabalhos.
As chaves a seguir estão disponíveis para uma tarefa de notebook. Para obter a definição de objeto da API REST correspondente, consulte notebook_task.
| Key | Tipo | Description |
|---|---|---|
base_parameters |
Map | Os parâmetros base a serem usados para cada execução deste trabalho.
|
notebook_path |
String | Obrigatório O caminho do notebook no workspace do Databricks ou repositório remoto, por exemplo /Users/user.name@databricks.com/notebook_to_run. Para notebooks armazenados no workspace do Databricks, o caminho deve ser absoluto e começar com uma barra. Para notebooks armazenados em um repositório remoto, o caminho deve ser relativo. |
source |
String | Tipo de local do notebook. Os valores válidos são WORKSPACE e GIT. Quando definido como WORKSPACE, o notebook será recuperado do workspace local do Databricks. Quando definido como GIT, o notebook será recuperado de um repositório Git definido em git_source. Se o valor estiver vazio, a tarefa usará GIT se git_source estiver definido e WORKSPACE caso contrário. |
warehouse_id |
String | A ID do armazém no qual executar o bloco de anotações. Não há suporte para armazéns SQL clássicos. Em vez disso, use armazéns SQL profissionais ou sem servidor. Observe que os sql warehouses dão suporte apenas a células SQL. Se o notebook contiver células não SQL, a execução falhará, portanto, se você precisar usar Python (ou outra) em uma célula, use sem servidor. |
Exemplos
O exemplo a seguir adiciona uma tarefa de notebook a um trabalho e define um parâmetro de trabalho chamado my_job_run_id. O caminho para o notebook implantar é relativo ao arquivo de configuração no qual essa tarefa é declarada. A tarefa recebe o notebook do local implantado no workspace do Azure Databricks.
resources:
jobs:
my-notebook-job:
name: my-notebook-job
tasks:
- task_key: my-notebook-task
notebook_task:
notebook_path: ./my-notebook.ipynb
parameters:
- name: my_job_run_id
default: '{{job.run_id}}'
Tarefa do pipeline
Você usa essa tarefa para executar um pipeline. Consulte Pipelines Declarativos do Lakeflow Spark.
As chaves a seguir estão disponíveis para uma tarefa de pipeline. Para obter a definição de objeto da API REST correspondente, consulte pipeline_task.
| Key | Tipo | Description |
|---|---|---|
full_refresh |
booleano | Se for true, uma atualização completa do pipeline será disparada, o que recompilará completamente todos os conjuntos de dados no pipeline. Se for falso ou omitido, somente os dados incrementais serão processados. Para obter detalhes, consulte a semântica de atualização do pipeline. |
pipeline_id |
String | Obrigatório O ID do pipeline a ser executado. O pipeline já deve existir. |
Exemplos
O exemplo a seguir adiciona uma tarefa de pipeline a um trabalho. Essa tarefa executa o pipeline especificado.
Dica
Você pode obter o ID de um pipeline ao abrir o pipeline na área de trabalho e copiando o valor da ID do Pipeline na guia Detalhes do Pipeline da página de configurações do pipeline.
resources:
jobs:
my-pipeline-job:
name: my-pipeline-job
tasks:
- task_key: my-pipeline-task
pipeline_task:
pipeline_id: 11111111-1111-1111-1111-111111111111
Tarefa do Power BI
Importante
O tipo de tarefa do Power BI está em Visualização Pública.
Use essa tarefa para disparar uma atualização de um modelo semântico do Power BI (anteriormente conhecido como um conjunto de dados).
As chaves a seguir estão disponíveis para uma tarefa do Power BI. Para obter a definição de objeto da API REST correspondente, consulte power_bi_task.
| Key | Tipo | Description |
|---|---|---|
connection_resource_name |
String | Obrigatório O nome da conexão do Catálogo Unity usada para autenticar do Databricks para o Power BI. |
power_bi_model |
String | Obrigatório O nome do modelo semântico do Power BI (conjunto de dados) a ser atualizado. |
refresh_after_update |
booleano | Se o modelo semântico do Power BI será atualizado após a conclusão da atualização. O padrão é false. |
tables |
Sequence | Uma lista de tabelas (cada uma como um mapa) a ser exportada para o Power BI. Consulte tabelas. |
warehouse_id |
String | O ID do armazém SQL a ser usado como a origem de dados do Power BI. |
Exemplos
O exemplo a seguir define uma tarefa do Power BI, que especifica uma conexão, o modelo do Power BI a ser atualizado e a tabela do Databricks a ser exportada.
resources:
jobs:
my_job:
name: my_job
tasks:
- task_key: power_bi_task
power_bi_task:
connection_resource_name: 'connection_name'
power_bi_model:
workspace_name: 'workspace_name'
model_name: 'model_name'
storage_mode: 'DIRECT_QUERY'
authentication_method: 'OAUTH'
overwrite_existing: false
refresh_after_update: false
tables:
- catalog: 'main'
schema: 'tpch'
name: 'customers'
storage_mode: 'DIRECT_QUERY'
warehouse_id: '1a111111a1111aa1'
Tarefa de script em Python
Use essa tarefa para executar um arquivo Python.
As chaves a seguir estão disponíveis para uma tarefa de script python. Para obter a definição de objeto da API REST correspondente, consulte python_task.
| Key | Tipo | Description |
|---|---|---|
parameters |
Sequence | Os parâmetros a serem passados para o arquivo Python. Use variáveis de parâmetro de tarefa para definir parâmetros que contêm informações sobre execuções de trabalho. |
python_file |
String | Obrigatório O URI do arquivo Python a ser executado, por exemplo /Users/someone@example.com/my-script.py. Para arquivos python armazenados no workspace do Databricks, o caminho deve ser absoluto e começar com /. Para arquivos armazenados em um repositório remoto, o caminho deve ser relativo. Esse campo não dá suporte a referências de valor dinâmico, como variáveis. |
source |
String | O tipo de localização do arquivo Python. Os valores válidos são WORKSPACE e GIT. Quando definido como WORKSPACE, o arquivo será recuperado do workspace local do Databricks. Quando definido como GIT, o arquivo será recuperado de um repositório Git definido em git_source. Se o valor estiver vazio, a tarefa usará GIT se git_source estiver definido e WORKSPACE caso contrário. |
Exemplos
O exemplo a seguir adiciona uma tarefa de script Python a um trabalho. O caminho do arquivo Python para ser implantado é relativo ao arquivo de configuração no qual esta tarefa é declarada. A tarefa obtém o arquivo Python da sua localização implantada no workspace do Azure Databricks.
resources:
jobs:
my-python-script-job:
name: my-python-script-job
tasks:
- task_key: my-python-script-task
spark_python_task:
python_file: ./my-script.py
Tarefa de wheel em Python
Você usa essa tarefa para executar uma roda do Python. Consulte Criar um arquivo de roda do Python usando pacotes de ativos do Databricks.
As chaves a seguir estão disponíveis para uma tarefa de roda do Python. Para obter a definição de objeto da API REST correspondente, consulte python_wheel_task.
| Key | Tipo | Description |
|---|---|---|
entry_point |
String | Obrigatório O ponto de entrada nomeado para execução: função ou classe. Se ele não existir nos metadados do pacote, ele executará a função do pacote diretamente usando $packageName.$entryPoint(). |
named_parameters |
Map | Os parâmetros nomeados a serem passados para a tarefa de roda do Python também são conhecidos como argumentos de palavra-chave. Um parâmetro nomeado é um par chave-valor com uma chave e um valor do tipo string. Ambos parameters e named_parameters não podem ser especificados. Se named_parameters for especificado, parameters será passado como argumentos de palavra-chave para a função de ponto de entrada. |
package_name |
String | Obrigatório O nome do pacote python a ser executado. Todas as dependências devem ser instaladas no ambiente. Isso não verifica nem instala nenhuma dependência de pacote. |
parameters |
Sequence | Os parâmetros a serem passados para a tarefa de roda do Python, também conhecida como argumentos posicionais. Cada parâmetro é uma cadeia de caracteres. Se especificado, named_parameters não deve ser especificado. |
Exemplos
O exemplo a seguir adiciona uma tarefa de wheel em Python a um trabalho. O caminho para o arquivo wheel do Python implantar é relativo ao arquivo de configuração no qual essa tarefa é declarada. Confira Dependências da biblioteca de Pacotes de Ativos do Databricks.
resources:
jobs:
my-python-wheel-job:
name: my-python-wheel-job
tasks:
- task_key: my-python-wheel-task
python_wheel_task:
entry_point: run
package_name: my_package
libraries:
- whl: ./my_package/dist/my_package-*.whl
Executar tarefa de trabalho
Use essa tarefa para executar outro trabalho.
As chaves a seguir estão disponíveis para uma tarefa de trabalho de execução. Para obter a definição de objeto da API REST correspondente, consulte run_job_task.
| Key | Tipo | Description |
|---|---|---|
job_id |
Integer | Obrigatório O ID do trabalho a ser executado. O trabalho já deve existir no espaço de trabalho. |
job_parameters |
Map | Parâmetros de nível de tarefa a serem passados para o trabalho em execução. Esses parâmetros são acessíveis dentro das tarefas do trabalho. |
pipeline_params |
Map | Parâmetros para a tarefa de pipeline. Usado somente se o trabalho que está sendo executado contiver uma tarefa de pipeline. Pode incluir full_refresh para iniciar uma atualização completa do pipeline. |
Exemplos
O exemplo a seguir contém uma tarefa de execução de trabalho no segundo trabalho que executa o primeiro trabalho.
Esse exemplo usa uma substituição para recuperar o identificador da tarefa a ser executada. Para obter a ID de um trabalho na interface do usuário, abra o trabalho no espaço de trabalho e copie a ID do valor da ID do trabalho na guia Detalhes do trabalho na página de configurações do trabalho.
resources:
jobs:
my-first-job:
name: my-first-job
tasks:
- task_key: my-first-job-task
new_cluster:
spark_version: '13.3.x-scala2.12'
node_type_id: 'i3.xlarge'
num_workers: 2
notebook_task:
notebook_path: ./src/test.py
my_second_job:
name: my-second-job
tasks:
- task_key: my-second-job-task
run_job_task:
job_id: ${resources.jobs.my-first-job.id}
Tarefa SQL
Você usa essa tarefa para executar um arquivo SQL, uma consulta ou um alerta.
As chaves a seguir estão disponíveis para uma tarefa SQL. Para obter a definição de objeto da API REST correspondente, consulte sql_task.
| Key | Tipo | Description |
|---|---|---|
alert |
Map | Configuração para executar um alerta SQL. Contém:
|
dashboard |
Map | Configuração para atualizar um painel do SQL. Contém:
|
file |
Map | Configuração para executar um arquivo SQL. Contém:
|
parameters |
Map | Parâmetros a serem usados para cada execução dessa tarefa. Consultas e arquivos SQL podem usar esses parâmetros referenciando-os com a sintaxe {{parameter_key}}. Use variáveis de parâmetro de tarefa para definir parâmetros que contêm informações sobre execuções de trabalho. |
query |
Map | Configuração para executar uma consulta SQL. Contém:
|
warehouse_id |
String | Obrigatório A ID do SQL Warehouse a ser usada para executar a tarefa SQL. O SQL Warehouse já deve existir. |
Exemplos
Dica
Para obter a ID de um sql warehouse, abra a página de configurações do SQL Warehouse e copie a ID encontrada entre parênteses após o nome do warehouse no campo Nome na guia Visão Geral .
O exemplo a seguir adiciona uma tarefa de arquivo SQL a um trabalho. Essa tarefa de arquivo SQL usa o SQL Warehouse especificado para executar o arquivo SQL especificado.
resources:
jobs:
my-sql-file-job:
name: my-sql-file-job
tasks:
- task_key: my-sql-file-task
sql_task:
file:
path: /Users/someone@example.com/hello-world.sql
source: WORKSPACE
warehouse_id: 1a111111a1111aa1
O exemplo a seguir adiciona uma tarefa de alerta SQL a um trabalho. Essa tarefa de alerta SQL usa o SQL Warehouse especificado para atualizar o alerta SQL especificado.
resources:
jobs:
my-sql-file-job:
name: my-sql-alert-job
tasks:
- task_key: my-sql-alert-task
sql_task:
warehouse_id: 1a111111a1111aa1
alert:
alert_id: 11111111-1111-1111-1111-111111111111
O exemplo a seguir adiciona uma tarefa de consulta SQL a um trabalho. Essa tarefa de consulta SQL usa o SQL Warehouse especificado para executar a consulta SQL especificada.
resources:
jobs:
my-sql-query-job:
name: my-sql-query-job
tasks:
- task_key: my-sql-query-task
sql_task:
warehouse_id: 1a111111a1111aa1
query:
query_id: 11111111-1111-1111-1111-111111111111
Outras configurações de tarefa
As configurações de tarefa a seguir permitem que você configure comportamentos para todas as tarefas. Para obter as definições de objeto da API REST correspondentes, consulte as tarefas.
| Key | Tipo | Description |
|---|---|---|
depends_on |
Sequence | Uma lista opcional de dependências de tarefas. Cada item contém:
|
description |
String | Uma descrição opcional para a tarefa. |
disable_auto_optimization |
booleano | Se deseja desabilitar a otimização automática para essa tarefa. Se for true, as otimizações automáticas, como a execução de consulta adaptável, serão desabilitadas. |
email_notifications |
Map | Um conjunto opcional de endereços de email para notificar quando uma execução começa, é concluída ou falha. Cada item contém:
|
environment_key |
String | A chave de um ambiente definido na configuração do trabalho environments. Usado para especificar configurações específicas do ambiente. Esse campo é necessário para script Python, roda python e tarefas dbt ao usar computação sem servidor. |
existing_cluster_id |
String | A ID de um cluster existente que será usada para todas as execuções dessa tarefa. |
health |
Map | Uma especificação opcional para o monitoramento de integridade dessa tarefa que inclui uma rules chave, que é uma lista de regras de integridade a serem avaliadas. |
job_cluster_key |
String | A chave de um cluster de trabalho definido na configuração do job_clusters trabalho. |
libraries |
Sequence | Uma lista opcional de bibliotecas a serem instaladas no cluster que executará a tarefa. Cada biblioteca é especificada como um mapa com chaves como jar, , egg, whl, pypi, , maven, cranou requirements. |
max_retries |
Integer | Um número máximo opcional de vezes para repetir a tarefa se ela falhar. Se não for especificado, a tarefa não será repetida. |
min_retry_interval_millis |
Integer | Um intervalo mínimo opcional em milissegundos entre o início da execução com falha e a execução de repetição subsequente. Se não for especificado, o padrão será 0 (repetição imediata). |
new_cluster |
Map | Uma especificação para um novo cluster a ser criado para cada execução dessa tarefa. Confira cluster. |
notification_settings |
Map | Configurações de notificação opcionais para esta tarefa. Cada item contém:
|
retry_on_timeout |
booleano | Uma configuração opcional para especificar se a tarefa deve ser repetida caso ela atinja o tempo limite. Se não especificado, o padrão é false. |
run_if |
String | Um valor opcional que indica a condição sob a qual a tarefa deve ser executada. Os valores válidos são:
|
task_key |
String | Obrigatório Um nome exclusivo para a tarefa. Esse campo é usado para fazer referência a essa tarefa a partir de outras tarefas usando o campo depends_on. |
timeout_seconds |
Integer | Um tempo limite opcional aplicado a cada execução dessa tarefa. Um valor de 0 significa que não há tempo limite. Se não for definido, o tempo limite padrão da configuração do cluster será usado. |
webhook_notifications |
Map | Um conjunto opcional de destinos do sistema para notificar quando uma execução começa, é concluída ou falha. Cada item contém:
|