Partilhar via


API de empregos 2.0

Importante

Este artigo documenta a versão 2.0 da API de trabalhos. No entanto, o Databricks recomenda o uso da API de trabalhos 2.1 para scripts e clientes novos e existentes. Para obter detalhes sobre as alterações das versões 2.0 para 2.1, consulte Atualizando da API de trabalhos 2.0 para 2.1.

A API de trabalhos permite criar, editar e excluir trabalhos. O tamanho máximo permitido de uma solicitação para a API de trabalhos é de 10 MB.

Para obter detalhes sobre atualizações da API de Trabalhos que dão suporte à orquestração de várias tarefas com trabalhos do Azure Databricks, consulte Atualizando da API de Trabalhos 2.0 para 2.1.

Aviso

Você nunca deve codificar segredos ou armazená-los em texto simples. Use a API Secrets para gerenciar segredos na CLI do Databricks. Use o utilitário Secrets (dbutils.secrets) para fazer referência a segredos em blocos de anotações e trabalhos.

Nota

Se você receber um erro de nível 500 ao fazer solicitações de API de trabalhos, o Databricks recomenda repetir as solicitações por até 10 minutos (com um intervalo mínimo de 30 segundos entre as tentativas).

Importante

Para aceder às APIs REST do Databricks, tem de se autenticar.

Criar

Ponto final Método HTTP
2.0/jobs/create POST

Crie um novo trabalho.

Exemplo

Este exemplo cria um trabalho que executa uma tarefa JAR às 22h15 todas as noites.

Pedir

curl --netrc --request POST \
https://<databricks-instance>/api/2.0/jobs/create \
--data @create-job.json \
| jq .

create-job.json:

{
  "name": "Nightly model training",
  "new_cluster": {
    "spark_version": "7.3.x-scala2.12",
    "node_type_id": "Standard_D3_v2",
    "num_workers": 10
  },
  "libraries": [
    {
      "jar": "dbfs:/my-jar.jar"
    },
    {
      "maven": {
        "coordinates": "org.jsoup:jsoup:1.7.2"
      }
    }
  ],
  "timeout_seconds": 3600,
  "max_retries": 1,
  "schedule": {
    "quartz_cron_expression": "0 15 22 * * ?",
    "timezone_id": "America/Los_Angeles"
  },
  "spark_jar_task": {
    "main_class_name": "com.databricks.ComputeModels"
  }
}

Substituir:

Este exemplo usa um arquivo .netrc e jq.

Response

{
  "job_id": 1
}

Estrutura do pedido

Importante

  • Quando você executa um trabalho em um novo cluster de trabalhos, o trabalho é tratado como uma carga de trabalho de Computação de Trabalhos (automatizada) sujeita aos preços de Computação de Trabalhos.
  • Quando você executa um trabalho em um cluster multiuso existente, ele é tratado como uma carga de trabalho (interativa) de computação para todos os fins sujeita aos preços da computação para todos os fins.
Nome do Campo Tipo Description
existing_cluster_id OU new_cluster STRING OU NewCluster Se existing_cluster_id, a ID de um cluster existente que será usado para todas as execuções deste trabalho. Ao executar trabalhos em um cluster existente, talvez seja necessário reiniciar manualmente o cluster se ele parar de responder. Sugerimos a execução de trabalhos em novos clusters para maior confiabilidade.

Se new_cluster, uma descrição de um cluster que será criado para cada execução.

Se especificar um PipelineTask, este campo pode estar vazio.
notebook_task OU spark_jar_task OU
spark_python_task OU spark_submit_task OU
pipeline_task OU run_job_task
NotebookTask OU SparkJarTask OU SparkPythonTask OU SparkSubmitTask OU PipelineTask OU RunJobTask Se notebook_task, indica que esse trabalho deve executar um bloco de anotações. Este campo não pode ser especificado em conjugação com spark_jar_task.

Se spark_jar_task, indica que esse trabalho deve executar um JAR.

Se spark_python_task, indica que esse trabalho deve executar um arquivo Python.

Se spark_submit_task, indica que esse trabalho deve ser iniciado pelo script de envio do spark.

Se pipeline_task, indica que esse trabalho deve executar um pipeline Delta Live Tables.

Se run_job_task, indica que esse trabalho deve executar outro trabalho.
name STRING Um nome opcional para o trabalho. O valor predefinido é Untitled.
libraries Uma variedade de Biblioteca Uma lista opcional de bibliotecas a serem instaladas no cluster que executará o trabalho. O valor padrão é uma lista vazia.
email_notifications JobEmailNotifications Um conjunto opcional de endereços de e-mail notificados quando as execuções deste trabalho começam e são concluídas e quando este trabalho é excluído. O comportamento padrão é não enviar e-mails.
webhook_notifications WebhookNotificações Um conjunto opcional de destinos do sistema para notificar quando as execuções deste trabalho começam, são concluídas ou falham.
notification_settings JobNotificationSettings Configurações de notificação opcionais que são usadas ao enviar notificações para cada um email_notifications dos e webhook_notifications para este trabalho.
timeout_seconds INT32 Um tempo limite opcional aplicado a cada execução deste trabalho. O comportamento padrão é não ter tempo limite.
max_retries INT32 Um número máximo opcional de vezes para tentar novamente uma execução malsucedida. Uma execução é considerada malsucedida se for concluída com o FAILED result_state ou
INTERNAL_ERROR
life_cycle_state. O valor -1 significa repetir indefinidamente e o valor 0 significa nunca mais tentar. O comportamento padrão é nunca mais tentar.
min_retry_interval_millis INT32 Um intervalo mínimo opcional em milissegundos entre o início da execução com falha e a execução de repetição subsequente. O comportamento padrão é que as execuções malsucedidas são imediatamente repetidas.
retry_on_timeout BOOL Uma política opcional para especificar se um trabalho deve ser repetido quando ele expirar. O comportamento padrão é não repetir no tempo limite.
schedule CronSchedule Um cronograma periódico opcional para este trabalho. O comportamento padrão é que o trabalho é executado quando acionado clicando em Executar agora na interface do usuário Trabalhos ou enviando uma solicitação de API para runNow.
max_concurrent_runs INT32 Um número máximo permitido opcional de execuções simultâneas do trabalho.

Defina esse valor se quiser ser capaz de executar várias execuções do mesmo trabalho simultaneamente. Isso é útil, por exemplo, se você acionar seu trabalho em um cronograma frequente e quiser permitir que execuções consecutivas se sobreponham umas às outras, ou se quiser acionar várias execuções que diferem por seus parâmetros de entrada.

Essa configuração afeta apenas novas execuções. Por exemplo, suponha que a simultaneidade do trabalho é 4 e há 4 execuções ativas simultâneas. Em seguida, definir a simultaneidade como 3 não matará nenhuma das execuções ativas. No entanto, a partir de então, novas execuções são ignoradas, a menos que haja menos de 3 execuções ativas.

Este valor não pode exceder 1000. Definir esse valor como 0 faz com que todas as novas execuções sejam ignoradas. O comportamento padrão é permitir apenas 1 execução simultânea.

Estrutura de resposta

Nome do Campo Tipo Description
job_id INT64 O identificador canônico para o trabalho recém-criado.

Lista

Ponto final Método HTTP
2.0/jobs/list GET

Liste todos os trabalhos.

Exemplo

Pedir

curl --netrc --request GET \
https://<databricks-instance>/api/2.0/jobs/list \
| jq .

Substitua <databricks-instance> pelo nome da instância do espaço de trabalho do Azure Databricks, por exemploadb-1234567890123456.7.azuredatabricks.net.

Este exemplo usa um arquivo .netrc e jq.

Response

{
  "jobs": [
    {
      "job_id": 1,
      "settings": {
        "name": "Nightly model training",
        "new_cluster": {
          "spark_version": "7.3.x-scala2.12",
          "node_type_id": "Standard_D3_v2",
          "num_workers": 10
        },
        "libraries": [
          {
            "jar": "dbfs:/my-jar.jar"
          },
          {
            "maven": {
              "coordinates": "org.jsoup:jsoup:1.7.2"
            }
          }
        ],
        "timeout_seconds": 100000000,
        "max_retries": 1,
        "schedule": {
          "quartz_cron_expression": "0 15 22 * * ?",
          "timezone_id": "America/Los_Angeles",
          "pause_status": "UNPAUSED"
        },
        "spark_jar_task": {
          "main_class_name": "com.databricks.ComputeModels"
        }
      },
      "created_time": 1457570074236
    }
  ]
}

Estrutura de resposta

Nome do Campo Tipo Description
jobs Uma matriz de trabalho A lista de empregos.

Suprimir

Ponto final Método HTTP
2.0/jobs/delete POST

Exclua um trabalho e envie um e-mail para os endereços especificados em JobSettings.email_notifications. Nenhuma ação ocorrerá se o trabalho já tiver sido removido. Depois que o trabalho é removido, nem seus detalhes nem seu histórico de execução são visíveis na interface do usuário ou na API de Trabalhos. É garantido que o trabalho será removido após a conclusão deste pedido. No entanto, as execuções que estavam ativas antes do recebimento dessa solicitação ainda podem estar ativas. Eles serão encerrados de forma assíncrona.

Exemplo

curl --netrc --request POST \
https://<databricks-instance>/api/2.0/jobs/delete \
--data '{ "job_id": <job-id> }'

Substituir:

Este exemplo usa um arquivo .netrc .

Estrutura do pedido

Nome do Campo Tipo Description
job_id INT64 O identificador canônico do trabalho a ser excluído. Este campo é obrigatório.

Obter

Ponto final Método HTTP
2.0/jobs/get GET

Recupere informações sobre um único trabalho.

Exemplo

Pedir

curl --netrc --request GET \
'https://<databricks-instance>/api/2.0/jobs/get?job_id=<job-id>' \
| jq .

Ou:

curl --netrc --get \
https://<databricks-instance>/api/2.0/jobs/get \
--data job_id=<job-id> \
| jq .

Substituir:

Este exemplo usa um arquivo .netrc e jq.

Response

{
  "job_id": 1,
  "settings": {
    "name": "Nightly model training",
    "new_cluster": {
      "spark_version": "7.3.x-scala2.12",
      "node_type_id": "Standard_D3_v2",
      "num_workers": 10
    },
    "libraries": [
      {
        "jar": "dbfs:/my-jar.jar"
      },
      {
        "maven": {
          "coordinates": "org.jsoup:jsoup:1.7.2"
        }
      }
    ],
    "timeout_seconds": 100000000,
    "max_retries": 1,
    "schedule": {
      "quartz_cron_expression": "0 15 22 * * ?",
      "timezone_id": "America/Los_Angeles",
      "pause_status": "UNPAUSED"
    },
    "spark_jar_task": {
      "main_class_name": "com.databricks.ComputeModels"
    }
  },
  "created_time": 1457570074236
}

Estrutura do pedido

Nome do Campo Tipo Description
job_id INT64 O identificador canônico do trabalho sobre o qual recuperar informações. Este campo é obrigatório.

Estrutura de resposta

Nome do Campo Tipo Description
job_id INT64 O identificador canônico para este trabalho.
creator_user_name STRING O nome de usuário do criador. Este campo não será incluído na resposta se o utilizador tiver sido eliminado.
settings JobSettings Configurações para este trabalho e todas as suas execuções. Essas configurações podem ser atualizadas usando os pontos de extremidade Redefinir ou Atualizar .
created_time INT64 A hora em que este trabalho foi criado em milissegundos de época (milissegundos desde 1/1/1970 UTC).

Repor

Ponto final Método HTTP
2.0/jobs/reset POST

Substitua todas as configurações de um trabalho específico. Use o ponto de extremidade Update para atualizar parcialmente as configurações do trabalho.

Exemplo

Esta solicitação de exemplo torna o trabalho 2 idêntico ao trabalho 1 no exemplo create .

curl --netrc --request POST \
https://<databricks-instance>/api/2.0/jobs/reset \
--data @reset-job.json \
| jq .

reset-job.json:

{
  "job_id": 2,
  "new_settings": {
    "name": "Nightly model training",
    "new_cluster": {
      "spark_version": "7.3.x-scala2.12",
      "node_type_id": "Standard_D3_v2",
      "num_workers": 10
    },
    "libraries": [
      {
        "jar": "dbfs:/my-jar.jar"
      },
      {
        "maven": {
          "coordinates": "org.jsoup:jsoup:1.7.2"
        }
      }
    ],
    "timeout_seconds": 100000000,
    "max_retries": 1,
    "schedule": {
      "quartz_cron_expression": "0 15 22 * * ?",
      "timezone_id": "America/Los_Angeles",
      "pause_status": "UNPAUSED"
    },
    "spark_jar_task": {
      "main_class_name": "com.databricks.ComputeModels"
    }
  }
}

Substituir:

Este exemplo usa um arquivo .netrc e jq.

Estrutura do pedido

Nome do Campo Tipo Description
job_id INT64 O identificador canônico do trabalho a ser redefinido. Este campo é obrigatório.
new_settings JobSettings As novas configurações do trabalho. Essas configurações substituem completamente as configurações antigas.

As alterações no campo JobSettings.timeout_seconds são aplicadas a execuções ativas. As alterações em outros campos são aplicadas apenas a execuções futuras.

Atualizar

Ponto final Método HTTP
2.0/jobs/update POST

Adicione, altere ou remova configurações específicas de um trabalho existente. Use o ponto de extremidade Redefinir para substituir todas as configurações de trabalho.

Exemplo

Esta solicitação de exemplo remove bibliotecas e adiciona configurações de notificação por email ao trabalho 1 definido no exemplo create .

curl --netrc --request POST \
https://<databricks-instance>/api/2.0/jobs/update \
--data @update-job.json \
| jq .

update-job.json:

{
  "job_id": 1,
  "new_settings": {
    "existing_cluster_id": "1201-my-cluster",
    "email_notifications": {
      "on_start": [ "someone@example.com" ],
      "on_success": [],
      "on_failure": []
    }
  },
  "fields_to_remove": ["libraries"]
}

Substituir:

Este exemplo usa um arquivo .netrc e jq.

Estrutura do pedido

Nome do Campo Tipo Description
job_id INT64 O identificador canônico do trabalho a ser atualizado. Este campo é obrigatório.
new_settings JobSettings As novas configurações para o trabalho.

Os campos de nível superior especificados em new_settings, exceto matrizes, são completamente substituídos. As matrizes são mescladas com base nos respetivos campos-chave, como task_key ou
job_cluster_keye as entradas de matriz com a mesma chave são completamente substituídas. Com exceção da mesclagem de matrizes, não há suporte para a atualização parcial de campos aninhados.

As alterações no campo JobSettings.timeout_seconds são aplicadas a execuções ativas. As alterações em outros campos são aplicadas apenas a execuções futuras.
fields_to_remove Uma matriz de STRING Remova os campos de nível superior nas configurações do trabalho. Não há suporte para a remoção de campos aninhados, exceto para entradas das tasks matrizes e job_clusters . Por exemplo, o seguinte é um argumento válido para este campo:
["libraries", "schedule", "tasks/task_1", "job_clusters/Default"]

Este campo é opcional.

Executar agora

Importante

  • Um espaço de trabalho é limitado a 1000 execuções de tarefas simultâneas. É devolvida uma resposta 429 Too Many Requests quando pede uma execução que não pode ser iniciada imediatamente.
  • O número de trabalhos que um espaço de trabalho pode criar em uma hora é limitado a 10000 (inclui "envio de execuções"). Este limite também afeta as tarefas criadas pela API REST e os fluxos de trabalho do bloco de notas.
  • Um espaço de trabalho pode conter até 12000 empregos salvos.
  • Um trabalho pode conter até 100 tarefas.
Ponto final Método HTTP
2.0/jobs/run-now POST

Execute um trabalho agora e retorne o run_id da execução acionada.

Gorjeta

Se você invocar Criar junto com Executar agora, poderá usar o ponto de extremidade de envio Execuções, que permite enviar sua carga de trabalho diretamente sem precisar criar um trabalho.

Exemplo

curl --netrc --request POST \
https://<databricks-instance>/api/2.0/jobs/run-now \
--data @run-job.json \
| jq .

run-job.json:

Um exemplo de solicitação para um trabalho de bloco de anotações:

{
  "job_id": 1,
  "notebook_params": {
    "name": "john doe",
    "age": "35"
  }
}

Um exemplo de solicitação para um trabalho JAR:

{
  "job_id": 2,
  "jar_params": [ "john doe", "35" ]
}

Substituir:

Este exemplo usa um arquivo .netrc e jq.

Estrutura do pedido

Nome do Campo Tipo Description
job_id INT64
jar_params Uma matriz de STRING Uma lista de parâmetros para trabalhos com tarefas JAR, por exemplo, "jar_params": ["john doe", "35"]. Os parâmetros serão usados para invocar a função principal da classe principal especificada na tarefa JAR do Spark. Se não for especificado no run-now, ele será padronizado para uma lista vazia. jar_params não pode ser especificado em conjunto com notebook_params. A representação JSON deste campo (ou seja, ) não pode exceder 10.000 bytes. {"jar_params":["john doe","35"]}
notebook_params Um mapa de ParamPair Um mapa de chaves para valores para trabalhos com tarefa de bloco de anotações, por exemplo,
"notebook_params": {"name": "john doe", "age": "35"}. O mapa é passado para o bloco de notas e é acessível através da função dbutils.widgets.get .

Se não for especificado no run-now, a execução acionada usa os parâmetros base do trabalho.

Não é possível especificar notebook_params em conjunto com jar_params.

A representação JSON deste campo (ou seja,
{"notebook_params":{"name":"john doe","age":"35"}}) não pode exceder 10.000 bytes.
python_params Uma matriz de STRING Uma lista de parâmetros para trabalhos com tarefas Python, por exemplo. "python_params": ["john doe", "35"] Os parâmetros serão passados para o arquivo Python como parâmetros de linha de comando. Se especificado no run-now, ele substituiria os parâmetros especificados na configuração do trabalho. A representação JSON deste campo (ou seja, ) não pode exceder 10.000 bytes. {"python_params":["john doe","35"]}
spark_submit_params Uma matriz de STRING Uma lista de parâmetros para trabalhos com tarefa de envio de faísca, por exemplo:
"spark_submit_params": ["--class", "org.apache.spark.examples.SparkPi"]. Os parâmetros serão passados para o script spark-submit como parâmetros de linha de comando. Se especificado no run-now, ele substituiria os parâmetros especificados na configuração do trabalho. A representação JSON deste campo não pode exceder 10.000 bytes.
idempotency_token STRING Um token opcional para garantir a idempotência das solicitações de execução de trabalho. Se já existir uma execução com o token fornecido, a solicitação não criará uma nova execução, mas retornará a ID da execução existente. Se uma execução com o token fornecido for excluída, um erro será retornado.

Se você especificar o token idempotency, em caso de falha, poderá tentar novamente até que a solicitação seja bem-sucedida. O Azure Databricks garante que exatamente uma execução seja iniciada com esse token de idempotência.

Este token deve ter no máximo 64 caracteres.

Para obter mais informações, consulte Como garantir idempotência para trabalhos.

Estrutura de resposta

Nome do Campo Tipo Description
run_id INT64 O ID globalmente exclusivo da execução recém-acionada.
number_in_job INT64 O número de sequência desta execução entre todas as execuções do trabalho.

Execução enviar

Importante

  • Um espaço de trabalho é limitado a 1000 execuções de tarefas simultâneas. É devolvida uma resposta 429 Too Many Requests quando pede uma execução que não pode ser iniciada imediatamente.
  • O número de trabalhos que um espaço de trabalho pode criar em uma hora é limitado a 10000 (inclui "envio de execuções"). Este limite também afeta as tarefas criadas pela API REST e os fluxos de trabalho do bloco de notas.
  • Um espaço de trabalho pode conter até 12000 empregos salvos.
  • Um trabalho pode conter até 100 tarefas.
Ponto final Método HTTP
2.0/jobs/runs/submit POST

Envie uma execução única. Esse ponto de extremidade permite que você envie uma carga de trabalho diretamente sem criar um trabalho. Use a jobs/runs/get API para verificar o estado de execução após o envio do trabalho.

Exemplo

Pedir

curl --netrc --request POST \
https://<databricks-instance>/api/2.0/jobs/runs/submit \
--data @submit-job.json \
| jq .

submit-job.json:

{
  "run_name": "my spark task",
  "new_cluster": {
    "spark_version": "7.3.x-scala2.12",
    "node_type_id": "Standard_D3_v2",
    "num_workers": 10
  },
  "libraries": [
    {
      "jar": "dbfs:/my-jar.jar"
    },
    {
      "maven": {
        "coordinates": "org.jsoup:jsoup:1.7.2"
      }
    }
  ],
  "spark_jar_task": {
    "main_class_name": "com.databricks.ComputeModels"
  }
}

Substituir:

Este exemplo usa um arquivo .netrc e jq.

Response

{
  "run_id": 123
}

Estrutura do pedido

Importante

  • Quando você executa um trabalho em um novo cluster de trabalhos, o trabalho é tratado como uma carga de trabalho de Computação de Trabalhos (automatizada) sujeita aos preços de Computação de Trabalhos.
  • Quando você executa um trabalho em um cluster multiuso existente, ele é tratado como uma carga de trabalho (interativa) de computação para todos os fins sujeita aos preços da computação para todos os fins.
Nome do Campo Tipo Description
existing_cluster_id OU new_cluster STRING OU NewCluster Se existing_cluster_id, a ID de um cluster existente que será usado para todas as execuções deste trabalho. Ao executar trabalhos em um cluster existente, talvez seja necessário reiniciar manualmente o cluster se ele parar de responder. Sugerimos a execução de trabalhos em novos clusters para maior confiabilidade.

Se new_cluster, uma descrição de um cluster que será criado para cada execução.

Se especificar um PipelineTask, esse campo pode estar vazio.
notebook_task OU spark_jar_task OU
spark_python_task OU spark_submit_task OU
pipeline_task OU run_job_task
NotebookTask OU SparkJarTask OU SparkPythonTask OU SparkSubmitTask OU PipelineTask OU RunJobTask Se notebook_task, indica que esse trabalho deve executar um bloco de anotações. Este campo não pode ser especificado em conjugação com spark_jar_task.

Se spark_jar_task, indica que esse trabalho deve executar um JAR.

Se spark_python_task, indica que esse trabalho deve executar um arquivo Python.

Se spark_submit_task, indica que esse trabalho deve ser iniciado pelo script de envio do spark.

Se pipeline_task, indica que esse trabalho deve executar um pipeline Delta Live Tables.

Se run_job_task, indica que esse trabalho deve executar outro trabalho.
run_name STRING Um nome opcional para a execução. O valor predefinido é Untitled.
webhook_notifications WebhookNotificações Um conjunto opcional de destinos do sistema para notificar quando as execuções deste trabalho começam, são concluídas ou falham.
notification_settings JobNotificationSettings Configurações de notificação opcionais que são usadas ao enviar notificações para cada um webhook_notifications dos para esta execução.
libraries Uma variedade de Biblioteca Uma lista opcional de bibliotecas a serem instaladas no cluster que executará o trabalho. O valor padrão é uma lista vazia.
timeout_seconds INT32 Um tempo limite opcional aplicado a cada execução deste trabalho. O comportamento padrão é não ter tempo limite.
idempotency_token STRING Um token opcional para garantir a idempotência das solicitações de execução de trabalho. Se já existir uma execução com o token fornecido, a solicitação não criará uma nova execução, mas retornará a ID da execução existente. Se uma execução com o token fornecido for excluída, um erro será retornado.

Se você especificar o token idempotency, em caso de falha, poderá tentar novamente até que a solicitação seja bem-sucedida. O Azure Databricks garante que exatamente uma execução seja iniciada com esse token de idempotência.

Este token deve ter no máximo 64 caracteres.

Para obter mais informações, consulte Como garantir idempotência para trabalhos.

Estrutura de resposta

Nome do Campo Tipo Description
run_id INT64 O identificador canônico para a execução recém-enviada.

Lista de execuções

Ponto final Método HTTP
2.0/jobs/runs/list GET

A lista é executada em ordem decrescente por hora de início.

Nota

As execuções são removidas automaticamente após 60 dias. Se quiser fazer referência a eles além de 60 dias, salve os resultados de execução antigos antes que eles expirem. Para exportar usando a interface do usuário, consulte Exportar resultados de execução de trabalho. Para exportar usando a API de trabalhos, consulte Executa exportação.

Exemplo

Pedir

curl --netrc --request GET \
'https://<databricks-instance>/api/2.0/jobs/runs/list?job_id=<job-id>&active_only=<true-false>&offset=<offset>&limit=<limit>&run_type=<run-type>' \
| jq .

Ou:

curl --netrc --get \
https://<databricks-instance>/api/2.0/jobs/runs/list \
--data 'job_id=<job-id>&active_only=<true-false>&offset=<offset>&limit=<limit>&run_type=<run-type>' \
| jq .

Substituir:

  • <databricks-instance>com o nome da instância do espaço de trabalho do Azure Databricks, por exemploadb-1234567890123456.7.azuredatabricks.net.
  • <job-id> com o ID do trabalho, por exemplo 123.
  • "<true-false> com true ou false".
  • <offset> com o offset valor.
  • <limit> com o limit valor.
  • <run-type> com o run_type valor.

Este exemplo usa um arquivo .netrc e jq.

Response

{
  "runs": [
    {
      "job_id": 1,
      "run_id": 452,
      "number_in_job": 5,
      "state": {
        "life_cycle_state": "RUNNING",
        "state_message": "Performing action"
      },
      "task": {
        "notebook_task": {
          "notebook_path": "/Users/donald@duck.com/my-notebook"
        }
      },
      "cluster_spec": {
        "existing_cluster_id": "1201-my-cluster"
      },
      "cluster_instance": {
        "cluster_id": "1201-my-cluster",
        "spark_context_id": "1102398-spark-context-id"
      },
      "overriding_parameters": {
        "jar_params": ["param1", "param2"]
      },
      "start_time": 1457570074236,
      "end_time": 1457570075149,
      "setup_duration": 259754,
      "execution_duration": 3589020,
      "cleanup_duration": 31038,
      "run_duration": 3879812,
      "trigger": "PERIODIC"
    }
  ],
  "has_more": true
}

Estrutura do pedido

Nome do Campo Tipo Description
active_only OU completed_only BOOL OU BOOL Se ative_only for true, apenas as execuções ativas serão incluídas nos resultados, caso contrário, listará as execuções ativas e concluídas. Uma execução ativa é uma execução no PENDING, , ou TERMINATING RunLifecycleStateRUNNING. Este campo não pode ser true quando completed_only é true.

Se completed_only for true, apenas as execuções concluídas serão incluídas nos resultados, caso contrário, listará as execuções ativas e concluídas. Este campo não pode ser true quando ative_only é true.
job_id INT64 O trabalho para o qual listar é executado. Se omitido, o serviço Trabalhos listará execuções de todos os trabalhos.
offset INT32 O deslocamento da primeira corrida a retornar, em relação à execução mais recente.
limit INT32 O número de execuções a serem retornadas. Este valor deve ser superior a 0 e inferior a 1000. O valor padrão é 20. Se uma solicitação especificar um limite de 0, o serviço usará o limite máximo.
run_type STRING O tipo de corridas a retornar. Para obter uma descrição dos tipos de execução, consulte Executar.

Estrutura de resposta

Nome do Campo Tipo Description
runs Uma matriz de Run Uma lista de corridas, da mais recente começou para a menos.
has_more BOOL Se verdadeiro, execuções adicionais correspondentes ao filtro fornecido estão disponíveis para listagem.

Corridas obter

Ponto final Método HTTP
2.0/jobs/runs/get GET

Recupere os metadados de uma execução.

Nota

As execuções são removidas automaticamente após 60 dias. Se quiser fazer referência a eles além de 60 dias, salve os resultados de execução antigos antes que eles expirem. Para exportar usando a interface do usuário, consulte Exportar resultados de execução de trabalho. Para exportar usando a API de trabalhos, consulte Executa exportação.

Exemplo

Pedir

curl --netrc --request GET \
'https://<databricks-instance>/api/2.0/jobs/runs/get?run_id=<run-id>' \
| jq .

Ou:

curl --netrc --get \
https://<databricks-instance>/api/2.0/jobs/runs/get \
--data run_id=<run-id> \
| jq .

Substituir:

Este exemplo usa um arquivo .netrc e jq.

Response

{
  "job_id": 1,
  "run_id": 452,
  "number_in_job": 5,
  "state": {
    "life_cycle_state": "RUNNING",
    "state_message": "Performing action"
  },
  "task": {
    "notebook_task": {
      "notebook_path": "/Users/someone@example.com/my-notebook"
    }
  },
  "cluster_spec": {
    "existing_cluster_id": "1201-my-cluster"
  },
  "cluster_instance": {
    "cluster_id": "1201-my-cluster",
    "spark_context_id": "1102398-spark-context-id"
  },
  "overriding_parameters": {
    "jar_params": ["param1", "param2"]
  },
  "start_time": 1457570074236,
  "end_time": 1457570075149,
  "setup_duration": 259754,
  "execution_duration": 3589020,
  "cleanup_duration": 31038,
  "run_duration": 3879812,
  "trigger": "PERIODIC"
}

Estrutura do pedido

Nome do Campo Tipo Description
run_id INT64 O identificador canônico da execução para a qual recuperar os metadados. Este campo é obrigatório.

Estrutura de resposta

Nome do Campo Tipo Description
job_id INT64 O identificador canônico do trabalho que contém essa execução.
run_id INT64 O identificador canônico da execução. Esse ID é exclusivo em todas as execuções de todos os trabalhos.
number_in_job INT64 O número de sequência desta execução entre todas as execuções do trabalho. Este valor começa em 1.
original_attempt_run_id INT64 Se esta execução for uma repetição de uma tentativa de execução anterior, este campo contém o run_id da tentativa original; caso contrário, é o mesmo que o run_id.
state RunState O resultado e os estados do ciclo de vida da execução.
schedule CronSchedule A programação cron que acionou essa execução se ela foi acionada pelo agendador periódico.
task JobTask A tarefa executada pela execução, se houver.
cluster_spec ClusterSpec Um instantâneo da especificação de cluster do trabalho quando essa execução foi criada.
cluster_instance ClusterInstance O cluster usado para essa execução. Se a execução for especificada para usar um novo cluster, esse campo será definido assim que o serviço Trabalhos solicitar um cluster para a execução.
overriding_parameters RunParameters Os parâmetros usados para esta execução.
start_time INT64 A hora em que esta corrida foi iniciada em milissegundos de época (milissegundos desde 1/1/1970 UTC). Este pode não ser o momento em que a tarefa de trabalho começa a ser executada, por exemplo, se o trabalho estiver agendado para ser executado em um novo cluster, esse é o momento em que a chamada de criação de cluster é emitida.
end_time INT64 A hora em que esta corrida terminou em milissegundos de época (milissegundos desde 1/1/1970 UTC). Este campo será definido como 0 se o trabalho ainda estiver em execução.
setup_duration INT64 O tempo, em milissegundos, necessário para configurar o cluster. Para execuções executadas em novos clusters, este é o tempo de criação do cluster, para execuções executadas em clusters existentes, esse tempo deve ser muito curto. A duração total da corrida é a soma do setup_duration,
execution_duratione o cleanup_duration. O setup_duration campo é definido como 0 para execuções de tarefas multitarefas. A duração total de uma execução de trabalho multitarefa é o valor do
run_duration campo.
execution_duration INT64 O tempo em milissegundos que levou para executar os comandos no JAR ou no bloco de anotações até que eles fossem concluídos, falhassem, expirassem, fossem cancelados ou encontrassem um erro inesperado. A duração total da corrida é a soma do setup_duration, execution_duratione o
cleanup_duration. O execution_duration campo é definido como 0 para execuções de tarefas multitarefas. A duração total de uma execução de trabalho multitarefa é o valor do run_duration campo.
cleanup_duration INT64 O tempo, em milissegundos, necessário para encerrar o cluster e limpar todos os artefatos associados. A duração total da execução é a soma do setup_duration, execution_duratione do cleanup_duration. O cleanup_duration campo é definido como 0 para execuções de tarefas multitarefas. A duração total de uma execução de trabalho multitarefa é o valor do run_duration campo.
run_duration INT64 O tempo, em milissegundos, levou a execução do trabalho e todos os seus reparos para terminar. Este campo é definido apenas para execuções de tarefas multitarefas e não para execuções de tarefas. A duração de uma execução de tarefa é a soma da
setup_duration, execution_duration, e o cleanup_duration.
trigger Tipo de gatilho O tipo de gatilho que disparou essa corrida.
creator_user_name STRING O nome de usuário do criador. Este campo não será incluído na resposta se o utilizador tiver sido eliminado
run_page_url STRING O URL para a página de detalhes da execução.

Executa a exportação

Ponto final Método HTTP
2.0/jobs/runs/export GET

Exporte e recupere a tarefa de execução do trabalho.

Nota

Apenas as execuções do bloco de notas podem ser exportadas em formato HTML. A exportação de execuções de outros tipos falhará.

Exemplo

Pedir

curl --netrc --request GET \
'https://<databricks-instance>/api/2.0/jobs/runs/export?run_id=<run-id>' \
| jq .

Ou:

curl --netrc --get \
https://<databricks-instance>/api/2.0/jobs/runs/export \
--data run_id=<run-id> \
| jq .

Substituir:

Este exemplo usa um arquivo .netrc e jq.

Response

{
  "views": [ {
    "content": "<!DOCTYPE html><html><head>Head</head><body>Body</body></html>",
    "name": "my-notebook",
    "type": "NOTEBOOK"
  } ]
}

Para extrair o bloco de anotações HTML da resposta JSON, baixe e execute este script Python.

Nota

O corpo do bloco de anotações no __DATABRICKS_NOTEBOOK_MODEL objeto é codificado.

Estrutura do pedido

Nome do Campo Tipo Description
run_id INT64 O identificador canônico para a execução. Este campo é obrigatório.
views_to_export ViewsToExport Quais modos de exibição exportar (CÓDIGO, PAINÉIS ou TODOS). O padrão é CODE.

Estrutura de resposta

Nome do Campo Tipo Description
views Uma matriz de ViewItem O conteúdo exportado em formato HTML (um para cada item de exibição).

Execuções canceladas

Ponto final Método HTTP
2.0/jobs/runs/cancel POST

Cancelar uma execução de trabalho. Como a execução é cancelada de forma assíncrona, a execução ainda pode estar em execução quando essa solicitação for concluída. A corrida será encerrada em breve. Se a execução já estiver em um terminal life_cycle_state, esse método é um no-op.

Este ponto de extremidade valida que o run_id parâmetro é válido e para parâmetros inválidos retorna o código de status HTTP 400.

Exemplo

curl --netrc --request POST \
https://<databricks-instance>/api/2.0/jobs/runs/cancel \
--data '{ "run_id": <run-id> }'

Substituir:

Este exemplo usa um arquivo .netrc .

Estrutura do pedido

Nome do Campo Tipo Description
run_id INT64 O identificador canônico da execução a ser cancelada. Este campo é obrigatório.

Execuções cancelam tudo

Ponto final Método HTTP
2.0/jobs/runs/cancel-all POST

Cancele todas as execuções ativas de um trabalho. Como a execução é cancelada de forma assíncrona, isso não impede que novas execuções sejam iniciadas.

Este ponto de extremidade valida que o job_id parâmetro é válido e para parâmetros inválidos retorna o código de status HTTP 400.

Exemplo

curl --netrc --request POST \
https://<databricks-instance>/api/2.0/jobs/runs/cancel-all \
--data '{ "job_id": <job-id> }'

Substituir:

Este exemplo usa um arquivo .netrc .

Estrutura do pedido

Nome do Campo Tipo Description
job_id INT64 O identificador canônico do trabalho para cancelar todas as execuções. Este campo é obrigatório.

Execuções obtêm saída

Ponto final Método HTTP
2.0/jobs/runs/get-output GET

Recupere a saída e os metadados de uma única tarefa executada. Quando uma tarefa de bloco de anotações retorna um valor por meio da chamada dbutils.notebook.exit(), você pode usar esse ponto de extremidade para recuperar esse valor. O Azure Databricks restringe essa API para retornar os primeiros 5 MB da saída. Para retornar um resultado maior, você pode armazenar os resultados do trabalho em um serviço de armazenamento em nuvem.

Este ponto de extremidade valida que o run_id parâmetro é válido e para parâmetros inválidos retorna o código de status HTTP 400.

As execuções são removidas automaticamente após 60 dias. Se quiser fazer referência a eles além de 60 dias, salve os resultados de execução antigos antes que eles expirem. Para exportar usando a interface do usuário, consulte Exportar resultados de execução de trabalho. Para exportar usando a API de trabalhos, consulte Executa exportação.

Exemplo

Pedir

curl --netrc --request GET \
'https://<databricks-instance>/api/2.0/jobs/runs/get-output?run_id=<run-id>' \
| jq .

Ou:

curl --netrc --get \
https://<databricks-instance>/api/2.0/jobs/runs/get-output \
--data run_id=<run-id> \
| jq .

Substituir:

Este exemplo usa um arquivo .netrc e jq.

Response

{
  "metadata": {
    "job_id": 1,
    "run_id": 452,
    "number_in_job": 5,
    "state": {
      "life_cycle_state": "TERMINATED",
      "result_state": "SUCCESS",
      "state_message": ""
    },
    "task": {
      "notebook_task": {
        "notebook_path": "/Users/someone@example.com/my-notebook"
      }
    },
    "cluster_spec": {
      "existing_cluster_id": "1201-my-cluster"
    },
    "cluster_instance": {
      "cluster_id": "1201-my-cluster",
      "spark_context_id": "1102398-spark-context-id"
    },
    "overriding_parameters": {
      "jar_params": ["param1", "param2"]
    },
    "start_time": 1457570074236,
    "setup_duration": 259754,
    "execution_duration": 3589020,
    "cleanup_duration": 31038,
    "run_duration": 3879812,
    "trigger": "PERIODIC"
  },
  "notebook_output": {
    "result": "the maybe truncated string passed to dbutils.notebook.exit()"
  }
}

Estrutura do pedido

Nome do Campo Tipo Description
run_id INT64 O identificador canônico para a execução. Para um trabalho com várias tarefas, esta é a run_id execução de uma tarefa. Consulte Execuções obter saída. Este campo é obrigatório.

Estrutura de resposta

Nome do Campo Tipo Description
notebook_output OU error NotebookOutput OU STRING Se notebook_output, a saída de uma tarefa do bloco de anotações, se disponível. Uma tarefa do bloco de notas que termina (com êxito ou com uma falha) sem chamar
dbutils.notebook.exit() é considerado como tendo uma saída vazia. Este campo será definido, mas seu valor de resultado estará vazio.

Se houver erro, uma mensagem de erro indicando por que a saída não está disponível. A mensagem não está estruturada e o seu formato exato está sujeito a alterações.
metadata Executar Todos os detalhes da execução, exceto sua saída.

Executa excluir

Ponto final Método HTTP
2.0/jobs/runs/delete POST

Exclua uma execução não ativa. Retorna um erro se a execução estiver ativa.

Exemplo

curl --netrc --request POST \
https://<databricks-instance>/api/2.0/jobs/runs/delete \
--data '{ "run_id": <run-id> }'

Substituir:

Este exemplo usa um arquivo .netrc .

Estrutura do pedido

Nome do Campo Tipo Description
run_id INT64 O identificador canônico da execução para a qual recuperar os metadados.

Estruturas de dados

Nesta secção:

ABFSSStorageInfo

Informações de armazenamento do Azure Data Lake Storage (ADLS).

Nome do Campo Tipo Description
destination STRING Destino do ficheiro. Exemplo: abfss://...

AutoDimensionamento

Intervalo que define o número mínimo e máximo de trabalhadores de cluster.

Nome do Campo Tipo Description
min_workers INT32 O número mínimo de trabalhadores para o qual o cluster pode ser reduzido quando subutilizado. É também o número inicial de trabalhadores que o cluster terá após a criação.
max_workers INT32 O número máximo de trabalhadores para o qual o cluster pode ser dimensionado quando sobrecarregado. max_workers deve ser rigorosamente superior a min_workers.

AzureAttributes

Atributos definidos durante a criação do cluster relacionados ao Azure.

Nome do Campo Tipo Description
first_on_demand INT32 Os primeiros first_on_demand nós do cluster serão colocados em instâncias sob demanda. Esse valor deve ser maior que 0, caso contrário, a validação da criação do cluster falhará. Se esse valor for maior ou igual ao tamanho atual do cluster, todos os nós serão colocados em instâncias sob demanda. Se esse valor for menor que o tamanho atual do cluster, first_on_demand os nós serão colocados em instâncias sob demanda e o restante será colocado em instâncias de disponibilidade. Esse valor não afeta o tamanho do cluster e não pode ser mutado durante o tempo de vida de um cluster.
availability AzureAvailability Tipo de disponibilidade usado para todos os nós subsequentes após os first_on_demand anteriores.
spot_bid_max_price DOUBLE O preço máximo de lance usado para instâncias spot do Azure. Você pode definir isso como maior ou igual ao preço à vista atual. Você também pode definir isso como -1 (o padrão), que especifica que a instância não pode ser removida com base no preço. O preço para a instância será o preço atual para instâncias spot ou o preço para uma instância padrão. Você pode exibir preços históricos e taxas de remoção no portal do Azure.

AzureAvailability

O comportamento do tipo de disponibilidade da instância do Azure.

Tipo Description
SPOT_AZURE Use instâncias spot.
ON_DEMAND_AZURE Use instâncias sob demanda.
SPOT_WITH_FALLBACK_AZURE De preferência, use instâncias spot, mas retorne a instâncias spot se não for possível adquirir instâncias spot (por exemplo, se os preços spot do Azure estiverem muito altos ou fora da cota). Não se aplica à disponibilidade da piscina.

ClusterInstance

Identificadores para o cluster e o contexto do Spark usados por uma execução. Esses dois valores juntos identificam um contexto de execução em todos os tempos.

Nome do Campo Tipo Description
cluster_id STRING O identificador canônico para o cluster usado por uma execução. Este campo está sempre disponível para execuções em clusters existentes. Para execuções em novos clusters, ele fica disponível assim que o cluster é criado. Esse valor pode ser usado para exibir logs navegando até /#setting/sparkui/$cluster_id/driver-logs. Os logs continuarão disponíveis após a conclusão da execução.

A resposta não incluirá este campo se o identificador ainda não estiver disponível.
spark_context_id STRING O identificador canônico para o contexto do Spark usado por uma execução. Este campo será preenchido assim que a execução começar a ser executada. Esse valor pode ser usado para exibir a interface do usuário do Spark navegando até /#setting/sparkui/$cluster_id/$spark_context_id. A interface do usuário do Spark continuará disponível após a conclusão da execução.

A resposta não incluirá este campo se o identificador ainda não estiver disponível.

ClusterLogConf

Caminho para o log de cluster.

Nome do Campo Tipo Description
dbfs DbfsStorageInfo Localização DBFS do log de cluster. O destino deve ser fornecido. Por exemplo,
{ "dbfs" : { "destination" : "dbfs:/home/cluster_log" } }

ClusterSpec

Importante

  • Quando você executa um trabalho em um novo cluster de trabalhos, o trabalho é tratado como uma carga de trabalho de Computação de Trabalhos (automatizada) sujeita aos preços de Computação de Trabalhos.
  • Quando você executa um trabalho em um cluster multiuso existente, ele é tratado como uma carga de trabalho (interativa) de computação para todos os fins sujeita aos preços da computação para todos os fins.
Nome do Campo Tipo Description
existing_cluster_id OU new_cluster STRING OU NewCluster Se existing_cluster_id, a ID de um cluster existente que será usado para todas as execuções deste trabalho. Ao executar trabalhos em um cluster existente, talvez seja necessário reiniciar manualmente o cluster se ele parar de responder. Sugerimos a execução de trabalhos em novos clusters para maior confiabilidade.

Se new_cluster, uma descrição de um cluster que será criado para cada execução.

Se especificar um PipelineTask, esse campo pode estar vazio.
libraries Uma variedade de Biblioteca Uma lista opcional de bibliotecas a serem instaladas no cluster que executará o trabalho. O valor padrão é uma lista vazia.

ClusterTag

Definição de tag de cluster.

Tipo Description
STRING A chave da tag. A chave deve:

- Ter entre 1 e 512 caracteres
- Não conter nenhum dos caracteres <>%*&+?\\/
- Não começar com azure, microsoftou windows
STRING O valor da tag. O comprimento do valor deve ser menor ou igual a 256 caracteres UTF-8.

CronSchedule

Nome do Campo Tipo Description
quartz_cron_expression STRING Uma expressão Cron usando sintaxe Quartz que descreve o cronograma para um trabalho. Consulte Cron Trigger para obter detalhes. Este campo é obrigatório.
timezone_id STRING Um ID de fuso horário Java. O cronograma de um trabalho será resolvido em relação a este fuso horário. Consulte Java TimeZone para obter detalhes. Este campo é obrigatório.
pause_status STRING Indique se este cronograma está pausado ou não. "PAUSADO" ou "UNPAUSED".

DbfsStorageInfo

Informações de armazenamento DBFS.

Nome do Campo Tipo Description
destination STRING Destino DBFS. Exemplo: dbfs:/my/path

FileStorageInfo

Informações de armazenamento de arquivos.

Nota

Esse tipo de local só está disponível para clusters configurados usando o Databricks Container Services.

Nome do Campo Tipo Description
destination STRING Destino do ficheiro. Exemplo: file:/my/file.sh

InitScriptInfo

Caminho para um script init.

Para obter instruções sobre como usar scripts init com o Databricks Container Services, consulte Usar um script init.

Nota

O tipo de armazenamento de arquivos (nome do campo: file) só está disponível para clusters configurados usando os Serviços de Contêiner do Databricks. Consulte FileStorageInfo.

Nome do Campo Tipo Description
workspace OU
dbfs (preterido)

OU
abfss
WorkspaceStorageInfo

DbfsStorageInfo (preterido)

ABFSSStorageInfo
Local do espaço de trabalho do script init. O destino deve ser fornecido. Por exemplo,
{ "workspace" : { "destination" : "/Users/someone@domain.com/init_script.sh" } }

(Preterido) Localização DBFS do script init. O destino deve ser fornecido. Por exemplo,
{ "dbfs" : { "destination" : "dbfs:/home/init_script" } }

Local do script de inicialização do Azure Data Lake Storage (ADLS). O destino deve ser fornecido. Por exemplo, { "abfss": { "destination" : "abfss://..." } }

Emprego

Nome do Campo Tipo Description
job_id INT64 O identificador canônico para este trabalho.
creator_user_name STRING O nome de usuário do criador. Este campo não será incluído na resposta se o utilizador já tiver sido eliminado.
run_as STRING O nome de usuário como o trabalho será executado. run_as baseia-se nas configurações atuais do trabalho e é definido como o criador do trabalho se o controle de acesso ao trabalho estiver desabilitado ou a permissão se o is_owner controle de acesso ao trabalho estiver habilitado.
settings JobSettings Configurações para este trabalho e todas as suas execuções. Essas configurações podem ser atualizadas usando o resetJob método.
created_time INT64 A hora em que este trabalho foi criado em milissegundos de época (milissegundos desde 1/1/1970 UTC).

JobEmailNotifications

Importante

Os campos on_start, on_success e on_failure aceitam apenas caracteres latinos (conjunto de caracteres ASCII). O uso de caracteres não-ASCII retornará um erro. Exemplos de caracteres inválidos e não ASCII são chineses, kanjis japoneses e emojis.

Nome do Campo Tipo Description
on_start Uma matriz de STRING Uma lista de endereços de e-mail a serem notificados quando uma execução começar. Se não for especificado na criação, redefinição ou atualização do trabalho, a lista estará vazia e as notificações não serão enviadas.
on_success Uma matriz de STRING Uma lista de endereços de e-mail a serem notificados quando uma execução for concluída com êxito. Uma execução é considerada concluída com êxito se terminar com a TERMINATED e a SUCCESSFUL result_state.life_cycle_state Se não for especificado na criação, redefinição ou atualização do trabalho, a lista estará vazia e as notificações não serão enviadas.
on_failure Uma matriz de STRING Uma lista de endereços de e-mail a serem notificados quando uma execução for concluída sem êxito. Considera-se que uma execução foi concluída sem êxito se terminar com um INTERNAL_ERROR
life_cycle_state ou um SKIPPED, FAILED, ou TIMED_OUT result_state. Se isso não for especificado na criação de trabalho, redefinição ou atualização, a lista estará vazia e as notificações não serão enviadas.
on_duration_warning_threshold_exceeded Uma matriz de STRING Uma lista de endereços de e-mail a serem notificados quando a duração de uma execução exceder o limite especificado para a RUN_DURATION_SECONDS métrica no health campo. Se nenhuma regra para a RUN_DURATION_SECONDS métrica for especificada no health campo para o trabalho, as notificações não serão enviadas.
no_alert_for_skipped_runs BOOL Se verdadeiro, não envie e-mails para destinatários especificados em on_failure se a execução for ignorada.
Nome do Campo Tipo Description
on_start Uma matriz de Webhook Uma lista opcional de destinos do sistema a serem notificados quando uma execução começa. Se não for especificado na criação, redefinição ou atualização do trabalho, a lista estará vazia e as notificações não serão enviadas. Um máximo de 3 destinos podem ser especificados para a on_start propriedade.
on_success Uma matriz de Webhook Uma lista opcional de destinos do sistema a serem notificados quando uma execução for concluída com êxito. Uma execução é considerada concluída com êxito se terminar com a TERMINATED e a SUCCESSFUL result_state.life_cycle_state Se não for especificado na criação, redefinição ou atualização do trabalho, a lista estará vazia e as notificações não serão enviadas. Um máximo de 3 destinos podem ser especificados para a on_success propriedade.
on_failure Uma matriz de Webhook Uma lista opcional de destinos do sistema a serem notificados quando uma execução for concluída sem êxito. Considera-se que uma execução foi concluída sem êxito se terminar com um INTERNAL_ERROR
life_cycle_state ou um SKIPPED, FAILED, ou TIMED_OUT result_state. Se isso não for especificado na criação de trabalho, redefinição ou atualização, a lista estará vazia e as notificações não serão enviadas. Um máximo de 3 destinos podem ser especificados para a on_failure propriedade.
on_duration_warning_threshold_exceeded Uma matriz de Webhook Uma lista opcional de destinos do sistema a serem notificados quando a duração de uma corrida exceder o limite especificado para a RUN_DURATION_SECONDS métrica no health campo. Um máximo de 3 destinos podem ser especificados para a on_duration_warning_threshold_exceeded propriedade.

JobNotificationSettings

Nome do Campo Tipo Description
no_alert_for_skipped_runs BOOL Se verdadeiro, não envie notificações para destinatários especificados em on_failure se a execução for ignorada.
no_alert_for_canceled_runs BOOL Se verdadeiro, não envie notificações para os destinatários especificados em on_failure se a execução for cancelada.
alert_on_last_attempt BOOL Se verdadeiro, não envie notificações para os destinatários especificados em on_start para as execuções repetidas e não envie notificações para os destinatários especificados em on_failure até a última repetição da execução.

JobSettings

Importante

  • Quando você executa um trabalho em um novo cluster de trabalhos, o trabalho é tratado como uma carga de trabalho de Computação de Trabalhos (automatizada) sujeita aos preços de Computação de Trabalhos.
  • Quando você executa um trabalho em um cluster multiuso existente, ele é tratado como uma carga de trabalho (interativa) de computação para todos os fins sujeita aos preços da computação para todos os fins.

Configurações para um trabalho. Essas configurações podem ser atualizadas usando o resetJob método.

Nome do Campo Tipo Description
existing_cluster_id OU new_cluster STRING OU NewCluster Se existing_cluster_id, a ID de um cluster existente que será usado para todas as execuções deste trabalho. Ao executar trabalhos em um cluster existente, talvez seja necessário reiniciar manualmente o cluster se ele parar de responder. Sugerimos a execução de trabalhos em novos clusters para maior confiabilidade.

Se new_cluster, uma descrição de um cluster que será criado para cada execução.

Se especificar um PipelineTask, esse campo pode estar vazio.
notebook_task OU spark_jar_task OU
spark_python_task OU spark_submit_task OU
pipeline_task OU run_job_task
NotebookTask OU SparkJarTask OU SparkPythonTask OU SparkSubmitTask OU PipelineTask OU RunJobTask Se notebook_task, indica que esse trabalho deve executar um bloco de anotações. Este campo não pode ser especificado em conjugação com spark_jar_task.

Se spark_jar_task, indica que esse trabalho deve executar um JAR.

Se spark_python_task, indica que esse trabalho deve executar um arquivo Python.

Se spark_submit_task, indica que esse trabalho deve ser iniciado pelo script de envio do spark.

Se pipeline_task, indica que esse trabalho deve executar um pipeline Delta Live Tables.

Se run_job_task, indica que esse trabalho deve executar outro trabalho.
name STRING Um nome opcional para o trabalho. O valor predefinido é Untitled.
libraries Uma variedade de Biblioteca Uma lista opcional de bibliotecas a serem instaladas no cluster que executará o trabalho. O valor padrão é uma lista vazia.
email_notifications JobEmailNotifications Um conjunto opcional de endereços de e-mail que serão notificados quando as execuções deste trabalho começarem ou forem concluídas, bem como quando este trabalho for excluído. O comportamento padrão é não enviar e-mails.
webhook_notifications WebhookNotificações Um conjunto opcional de destinos do sistema para notificar quando as execuções deste trabalho começam, são concluídas ou falham.
notification_settings JobNotificationSettings Configurações de notificação opcionais que são usadas ao enviar notificações para cada um email_notifications dos e webhook_notifications para este trabalho.
timeout_seconds INT32 Um tempo limite opcional aplicado a cada execução deste trabalho. O comportamento padrão é não ter tempo limite.
max_retries INT32 Um número máximo opcional de vezes para tentar novamente uma execução malsucedida. Uma execução é considerada malsucedida se for concluída com o FAILED result_state ou
INTERNAL_ERROR
life_cycle_state. O valor -1 significa repetir indefinidamente e o valor 0 significa nunca mais tentar. O comportamento padrão é nunca mais tentar.
min_retry_interval_millis INT32 Um intervalo mínimo opcional em milissegundos entre as tentativas. O comportamento padrão é que as execuções malsucedidas são imediatamente repetidas.
retry_on_timeout BOOL Uma política opcional para especificar se um trabalho deve ser repetido quando ele expirar. O comportamento padrão é não repetir no tempo limite.
schedule CronSchedule Um cronograma periódico opcional para este trabalho. O comportamento padrão é que o trabalho só será executado quando acionado clicando em "Executar agora" na interface do usuário de trabalhos ou enviando uma solicitação de API para
runNow.
max_concurrent_runs INT32 Um número máximo permitido opcional de execuções simultâneas do trabalho.

Defina esse valor se quiser ser capaz de executar várias execuções do mesmo trabalho simultaneamente. Isso é útil, por exemplo, se você acionar seu trabalho em um cronograma frequente e quiser permitir que execuções consecutivas se sobreponham umas às outras, ou se quiser acionar várias execuções que diferem por seus parâmetros de entrada.

Essa configuração afeta apenas novas execuções. Por exemplo, suponha que a simultaneidade do trabalho é 4 e há 4 execuções ativas simultâneas. Em seguida, definir a simultaneidade como 3 não matará nenhuma das execuções ativas. No entanto, a partir de então, novas execuções serão ignoradas, a menos que haja menos de 3 execuções ativas.

Este valor não pode exceder 1000. Definir esse valor como 0 faz com que todas as novas execuções sejam ignoradas. O comportamento padrão é permitir apenas 1 execução simultânea.
health JobsHealthRules Um conjunto opcional de regras de integridade definidas para o trabalho.

JobTask

Nome do Campo Tipo Description
notebook_task OU spark_jar_task OU
spark_python_task OU spark_submit_task OU
pipeline_task OU run_job_task
NotebookTask OU SparkJarTask OU SparkPythonTask OU SparkSubmitTask OU PipelineTask OU RunJobTask Se notebook_task, indica que esse trabalho deve executar um bloco de anotações. Este campo não pode ser especificado em conjugação com spark_jar_task.

Se spark_jar_task, indica que esse trabalho deve executar um JAR.

Se spark_python_task, indica que esse trabalho deve executar um arquivo Python.

Se spark_submit_task, indica que esse trabalho deve ser iniciado pelo script de envio do spark.

Se pipeline_task, indica que esse trabalho deve executar um pipeline Delta Live Tables.

Se run_job_task, indica que esse trabalho deve executar outro trabalho.

JobsHealthRule

Nome do Campo Tipo Description
metric STRING Especifica a métrica de integridade que está sendo avaliada para uma regra de integridade específica. Os valores válidos são RUN_DURATION_SECONDS.
operator STRING Especifica o operador usado para comparar o valor da métrica de integridade com o limite especificado. Os valores válidos são GREATER_THAN.
value INT32 Especifica o valor limite que a métrica de integridade deve atender para estar em conformidade com a regra de integridade.

JobsHealthRules

Nome do Campo Tipo Description
rules Uma matriz de JobsHealthRule Um conjunto opcional de regras de integridade que pode ser definido para um trabalho.

Biblioteca

Nome do Campo Tipo Description
jar OU egg OU whl OU
pypi OU maven OU cran
STRING OU STRING OU STRING OU PythonPyPiLibrary OU MavenLibrary OU RCranLibrary Se jar, URI do JAR a ser instalado. DBFS e ADLS () URIs sãoabfss suportados. Por exemplo: { "jar": "dbfs:/mnt/databricks/library.jar" } ou
{ "jar": "abfss://<container-path>/library.jar" }. Se o ADLS for usado, verifique se o cluster tem acesso de leitura na biblioteca.

Se ovo, URI do ovo a ser instalado. Há suporte para URIs DBFS e ADLS. Por exemplo: { "egg": "dbfs:/my/egg" } ou
{ "egg": "abfss://<container-path>/egg" }.

Se whl, URI do ou compactado wheel wheels para ser instalado. Há suporte para URIs DBFS e ADLS. Por exemplo: { "whl": "dbfs:/my/whl" } ou
{ "whl": "abfss://<container-path>/whl" }. Se o ADLS for usado, verifique se o cluster tem acesso de leitura na biblioteca. Além disso, o nome do wheel arquivo precisa usar a convenção correta. Se compactados wheels forem instalados, o sufixo do nome do arquivo deverá ser .wheelhouse.zip.

Se pypi, especificação de uma biblioteca PyPI a ser instalada. Especificar o repo campo é opcional e, se não for especificado, o índice pip padrão é usado. Por exemplo:
{ "package": "simplejson", "repo": "https://my-repo.com" }

Se maven, especificação de uma biblioteca Maven a ser instalada. Por exemplo:
{ "coordinates": "org.jsoup:jsoup:1.7.2" }

Se guindaste, especificação de uma biblioteca CRAN a ser instalada.

MavenLibrary

Nome do Campo Tipo Description
coordinates STRING Coordenadas Maven estilo Gradle. Por exemplo: org.jsoup:jsoup:1.7.2. Este campo é obrigatório.
repo STRING Maven repo para instalar o pacote Maven a partir de. Se omitido, o Maven Central Repository e o Spark Packages serão pesquisados.
exclusions Uma matriz de STRING Lista de dependências a excluir. Por exemplo: ["slf4j:slf4j", "*:hadoop-client"].

Exclusões de dependência Maven: https://maven.apache.org/guides/introduction/introduction-to-optional-and-excludes-dependencies.html.

NewCluster

Nome do Campo Tipo Description
num_workers OU autoscale INT32 OU AutoScale Se num_workers, número de nós de trabalho que esse cluster deve ter. Um cluster tem um driver Spark e num_workers executores para um total de num_workers + 1 nós Spark.

Nota: Ao ler as propriedades de um cluster, este campo reflete o número desejado de trabalhadores em vez do número atual real de trabalhadores. Por exemplo, se um cluster for redimensionado de 5 para 10 trabalhadores, este campo será imediatamente atualizado para refletir o tamanho alvo de 10 trabalhadores, enquanto os trabalhadores listados em spark_info aumentar gradualmente de 5 para 10 à medida que os novos nós são provisionados.

Se o dimensionamento automático, os parâmetros são necessários para dimensionar automaticamente os clusters para cima e para baixo com base na carga.
spark_version STRING A versão Spark do cluster. Uma lista de versões disponíveis do Spark pode ser recuperada usando a chamada GET 2.0/clusters/spark-versions . Este campo é obrigatório.
spark_conf FaíscaConfPair Um objeto que contém um conjunto de pares opcionais de chave-valor de configuração do Spark especificados pelo usuário. Você também pode passar uma sequência de opções JVM extras para o driver e os executores via
spark.driver.extraJavaOptions e spark.executor.extraJavaOptions respetivamente.

Exemplo de confs Spark:
{"spark.speculation": true, "spark.streaming.ui.retainedBatches": 5} ou
{"spark.driver.extraJavaOptions": "-verbose:gc -XX:+PrintGCDetails"}
node_type_id STRING Este campo codifica, através de um único valor, os recursos disponíveis para cada um dos nós do Spark neste cluster. Por exemplo, os nós do Spark podem ser provisionados e otimizados para cargas de trabalho de memória ou computação intensiva Uma lista de tipos de nó disponíveis pode ser recuperada usando a chamada GET 2.0/clusters/list-node-types . Este campo, o instance_pool_id campo ou uma política de cluster que especifica um ID de tipo de nó ou ID de pool de instâncias é obrigatório.
driver_node_type_id STRING O tipo de nó do driver Spark. Este campo é opcional; Se não estiver definido, o tipo de nó do driver será definido como o mesmo valor node_type_id definido acima.
custom_tags ClusterTag Um objeto que contém um conjunto de tags para recursos de cluster. O Databricks marca todos os recursos de cluster (como VMs) com essas marcas, além de default_tags.

Nota:

- As tags não são suportadas em tipos de nó legados, como computação otimizada e memória otimizada
- Databricks permite no máximo 45 tags personalizadas
cluster_log_conf ClusterLogConf A configuração para entregar logs do Spark a um destino de armazenamento de longo prazo. Apenas um destino pode ser especificado para um cluster. Se o conf for dado, os logs serão entregues ao destino a cada 5 mins. O destino dos logs de driver é <destination>/<cluster-id>/driver, enquanto o destino dos logs do executor é <destination>/<cluster-id>/executor.
init_scripts Uma matriz de InitScriptInfo A configuração para armazenar scripts init. Qualquer número de scripts pode ser especificado. Os scripts são executados sequencialmente na ordem fornecida. Se cluster_log_conf for especificado, os logs de script de inicialização serão enviados para
<destination>/<cluster-id>/init_scripts.
spark_env_vars SparkEnvPair Um objeto que contém um conjunto de pares opcionais de variável de ambiente especificados pelo usuário chave-valor. O par chave-valor do formulário (X,Y) é exportado como está (ou seja,
export X='Y') ao lançar o motorista e os trabalhadores.

Para especificar um conjunto adicional de SPARK_DAEMON_JAVA_OPTS, recomendamos anexá-los como $SPARK_DAEMON_JAVA_OPTS mostrado no exemplo a seguir. Isso garante que todas as variáveis ambientais gerenciadas por databricks padrão também sejam incluídas.

Exemplo de variáveis de ambiente do Spark:
{"SPARK_WORKER_MEMORY": "28000m", "SPARK_LOCAL_DIRS": "/local_disk0"} ou
{"SPARK_DAEMON_JAVA_OPTS": "$SPARK_DAEMON_JAVA_OPTS -Dspark.shuffle.service.enabled=true"}
enable_elastic_disk BOOL Autoscaling Local Storage: quando ativado, esse cluster adquire dinamicamente espaço em disco adicional quando seus trabalhadores do Spark estão com pouco espaço em disco. Consulte Ativar armazenamento local de dimensionamento automático para obter detalhes.
driver_instance_pool_id STRING A ID opcional do pool de instâncias a ser usado para o nó do driver. Você também deve especificar instance_pool_id. Consulte a API de pools de instâncias para obter detalhes.
instance_pool_id STRING A ID opcional do pool de instâncias a ser usado para nós de cluster. Se driver_instance_pool_id estiver presente,
instance_pool_id é usado apenas para nós de trabalho. Caso contrário, ele é usado para o nó do driver e nós de trabalho. Consulte a API de pools de instâncias para obter detalhes.

Saída de Notebook

Nome do Campo Tipo Description
result STRING O valor passado para dbutils.notebook.exit(). O Azure Databricks restringe essa API para retornar os primeiros 1 MB do valor. Para um resultado maior, seu trabalho pode armazenar os resultados em um serviço de armazenamento em nuvem. Este campo estará ausente se dbutils.notebook.exit() nunca tiver sido chamado.
truncated BOOLEAN Se o resultado foi truncado ou não.

NotebookTask

Todas as células de saída estão sujeitas ao tamanho de 8MB. Se a saída de uma célula tiver um tamanho maior, o resto da execução será cancelada e a execução será marcada como falha. Nesse caso, parte da saída de conteúdo de outras células também pode estar faltando.

Se precisar de ajuda para encontrar a célula que está além do limite, execute o bloco de anotações em um cluster multiuso e use esta técnica de salvamento automático do bloco de anotações.

Nome do Campo Tipo Description
notebook_path STRING O caminho absoluto do bloco de anotações a ser executado no espaço de trabalho do Azure Databricks. Este caminho deve começar com uma barra. Este campo é obrigatório.
revision_timestamp LONG O carimbo de data/hora da revisão do caderno.
base_parameters Um mapa de ParamPair Parâmetros básicos a serem usados para cada execução deste trabalho. Se a execução for iniciada por uma chamada para run-now com parâmetros especificados, os dois mapas de parâmetros serão mesclados. Se a mesma chave for especificada em base_parameters e em run-now, o valor de run-now será usado.

Use O que é uma referência de valor dinâmico? para definir parâmetros contendo informações sobre execuções de trabalho.

Se o bloco de anotações usar um parâmetro que não esteja especificado nos parâmetros do base_parameters trabalho ou de run-now substituição, o valor padrão do bloco de anotações será usado.

Recupere esses parâmetros em um bloco de anotações usando dbutils.widgets.get.

ParamPair

Parâmetros baseados em nome para trabalhos que executam tarefas do bloco de anotações.

Importante

Os campos nesta estrutura de dados aceitam apenas caracteres latinos (conjunto de caracteres ASCII). O uso de caracteres não-ASCII retornará um erro. Exemplos de caracteres inválidos e não ASCII são chineses, kanjis japoneses e emojis.

Tipo Description
STRING Nome do parâmetro. Passe para dbutils.widgets.get para recuperar o valor.
STRING Valor do parâmetro.

PipelineTask

Nome do Campo Tipo Description
pipeline_id STRING O nome completo da tarefa de pipeline Delta Live Tables a ser executada.

Biblioteca PythonPyPi

Nome do Campo Tipo Description
package STRING O nome do pacote PyPI a ser instalado. Uma especificação de versão exata opcional também é suportada. Exemplos: simplejson e simplejson==3.8.0. Este campo é obrigatório.
repo STRING O repositório onde o pacote pode ser encontrado. Se não for especificado, o índice pip padrão será usado.

RCranLibrary

Nome do Campo Tipo Description
package STRING O nome do pacote CRAN a ser instalado. Este campo é obrigatório.
repo STRING O repositório onde o pacote pode ser encontrado. Se não for especificado, o repositório CRAN padrão será usado.

Executar

Todas as informações sobre uma execução, exceto sua saída. A saída pode ser recuperada separadamente com o getRunOutput método.

Nome do Campo Tipo Description
job_id INT64 O identificador canônico do trabalho que contém essa execução.
run_id INT64 O identificador canônico da execução. Esse ID é exclusivo em todas as execuções de todos os trabalhos.
creator_user_name STRING O nome de usuário do criador. Este campo não será incluído na resposta se o utilizador já tiver sido eliminado.
number_in_job INT64 O número de sequência desta execução entre todas as execuções do trabalho. Este valor começa em 1.
original_attempt_run_id INT64 Se esta execução for uma repetição de uma tentativa de execução anterior, este campo contém o run_id da tentativa original; caso contrário, é o mesmo que o run_id.
state RunState O resultado e os estados do ciclo de vida da execução.
schedule CronSchedule A programação cron que acionou essa execução se ela foi acionada pelo agendador periódico.
task JobTask A tarefa executada pela execução, se houver.
cluster_spec ClusterSpec Um instantâneo da especificação de cluster do trabalho quando essa execução foi criada.
cluster_instance ClusterInstance O cluster usado para essa execução. Se a execução for especificada para usar um novo cluster, esse campo será definido assim que o serviço Trabalhos solicitar um cluster para a execução.
overriding_parameters RunParameters Os parâmetros usados para esta execução.
start_time INT64 A hora em que esta corrida foi iniciada em milissegundos de época (milissegundos desde 1/1/1970 UTC). Este pode não ser o momento em que a tarefa de trabalho começa a ser executada, por exemplo, se o trabalho estiver agendado para ser executado em um novo cluster, esse é o momento em que a chamada de criação de cluster é emitida.
setup_duration INT64 O tempo necessário para configurar o cluster em milissegundos. Para execuções executadas em novos clusters, este é o tempo de criação do cluster, para execuções executadas em clusters existentes, esse tempo deve ser muito curto.
execution_duration INT64 O tempo em milissegundos que levou para executar os comandos no JAR ou no bloco de anotações até que eles fossem concluídos, falhassem, expirassem, fossem cancelados ou encontrassem um erro inesperado.
cleanup_duration INT64 O tempo, em milissegundos, necessário para encerrar o cluster e limpar todos os artefatos associados. A duração total da corrida é a soma dos setup_duration, do execution_duration e do cleanup_duration.
end_time INT64 A hora em que esta corrida terminou em milissegundos de época (milissegundos desde 1/1/1970 UTC). Este campo será definido como 0 se o trabalho ainda estiver em execução.
trigger Tipo de gatilho O tipo de gatilho que disparou essa corrida.
run_name STRING Um nome opcional para a execução. O valor predefinido é Untitled. O comprimento máximo permitido é de 4096 bytes na codificação UTF-8.
run_page_url STRING O URL para a página de detalhes da execução.
run_type STRING O tipo de execução.

- JOB_RUN - Execução normal do trabalho. Uma execução criada com Executar agora.
- WORKFLOW_RUN - Fluxo de trabalho executado. Uma execução criada com dbutils.notebook.run.
- SUBMIT_RUN - Enviar corrida. Uma execução criada com Executar agora.
attempt_number INT32 O número de sequência dessa tentativa de execução para uma execução de trabalho acionada. A tentativa inicial de uma corrida tem um attempt_number de 0. Se a tentativa de execução inicial falhar e o trabalho tiver uma política de repetição (max_retries> 0), as execuções subsequentes serão criadas com um original_attempt_run_id ID da tentativa original e um incremento attempt_number. As execuções são repetidas apenas até serem bem-sucedidas, e o máximo attempt_number é o mesmo que o max_retries valor para o trabalho.

RunJobTask

Nome do Campo Tipo Description
job_id INT32 Identificador exclusivo do trabalho a ser executado. Este campo é obrigatório.

RunLifeCycleState

O estado do ciclo de vida de uma corrida. As transições de estado permitidas são:

  • QUEUED ->PENDING
  • PENDING ->RUNNING ->TERMINATING ->TERMINATED
  • PENDING ->SKIPPED
  • PENDING ->INTERNAL_ERROR
  • RUNNING ->INTERNAL_ERROR
  • TERMINATING ->INTERNAL_ERROR
Condição Description
QUEUED A execução foi acionada, mas está na fila porque atingiu um dos seguintes limites:

- O máximo de execuções ativas simultâneas no espaço de trabalho.
- A tarefa simultânea Run Job máxima é executada no espaço de trabalho.
- O máximo de execuções simultâneas do trabalho.

O trabalho ou a execução deve ter o enfileiramento habilitado antes de atingir esse estado.
PENDING A execução foi acionada. Se as execuções simultâneas máximas configuradas do trabalho já forem atingidas, a execução fará a transição imediata para o SKIPPED estado sem preparar nenhum recurso. Caso contrário, a preparação do cluster e a execução estão em andamento.
RUNNING A tarefa desta execução está sendo executada.
TERMINATING A tarefa desta execução foi concluída e o cluster e o contexto de execução estão sendo limpos.
TERMINATED A tarefa desta execução foi concluída e o cluster e o contexto de execução foram limpos. Este estado é terminal.
SKIPPED Essa execução foi abortada porque uma execução anterior do mesmo trabalho já estava ativa. Este estado é terminal.
INTERNAL_ERROR Um estado excecional que indica uma falha no serviço Trabalhos, como falha de rede durante um longo período. Se uma execução em um novo cluster terminar no INTERNAL_ERROR estado, o serviço Trabalhos encerrará o cluster o mais rápido possível. Este estado é terminal.

RunParameters

Parâmetros para esta execução. Apenas um dos jar_params, python_paramsou notebook_params deve ser especificado na run-now solicitação, dependendo do tipo de tarefa de trabalho. Os trabalhos com a tarefa JAR do Spark ou a tarefa Python usam uma lista de parâmetros baseados em posição, e os trabalhos com tarefas do bloco de anotações têm um mapa de valor chave.

Nome do Campo Tipo Description
jar_params Uma matriz de STRING Uma lista de parâmetros para trabalhos com tarefas JAR do Spark, por exemplo. "jar_params": ["john doe", "35"] Os parâmetros serão usados para invocar a função principal da classe principal especificada na tarefa JAR do Spark. Se não for especificado no run-now, ele será padronizado para uma lista vazia. jar_params não pode ser especificado em conjunto com notebook_params. A representação JSON deste campo (ou seja, ) não pode exceder 10.000 bytes. {"jar_params":["john doe","35"]}

Use O que é uma referência de valor dinâmico? para definir parâmetros contendo informações sobre execuções de trabalho.
notebook_params Um mapa de ParamPair Um mapa de chaves para valores para trabalhos com tarefa de bloco de anotações, por exemplo,
"notebook_params": {"name": "john doe", "age": "35"}. O mapa é passado para o bloco de notas e é acessível através da função dbutils.widgets.get .

Se não for especificado no run-now, a execução acionada usa os parâmetros base do trabalho.

notebook_params não pode ser especificado em conjunto com jar_params.

Use O que é uma referência de valor dinâmico? para definir parâmetros contendo informações sobre execuções de trabalho.

A representação JSON deste campo (ou seja,
{"notebook_params":{"name":"john doe","age":"35"}}) não pode exceder 10.000 bytes.
python_params Uma matriz de STRING Uma lista de parâmetros para trabalhos com tarefas Python, por exemplo. "python_params": ["john doe", "35"] Os parâmetros são passados para o arquivo Python como parâmetros de linha de comando. Se especificado no run-now, ele substituiria os parâmetros especificados na configuração do trabalho. A representação JSON deste campo (ou seja, ) não pode exceder 10.000 bytes. {"python_params":["john doe","35"]}

Use O que é uma referência de valor dinâmico? para definir parâmetros contendo informações sobre execuções de trabalho.

> [! IMPORTANTE] >> Estes parâmetros aceitam apenas caracteres latinos (conjunto de caracteres ASCII). > O uso de caracteres não-ASCII retornará um erro. Exemplos de caracteres > inválidos e não ASCII são chineses, kanjis japoneses e emojis.
spark_submit_params Uma matriz de STRING Uma lista de parâmetros para trabalhos com tarefa de envio de faísca, por exemplo:
"spark_submit_params": ["--class", "org.apache.spark.examples.SparkPi"]. Os parâmetros são passados para o script spark-submit como parâmetros de linha de comando. Se especificado no run-now, ele substituiria os parâmetros especificados na configuração do trabalho. A representação JSON deste campo (ou seja, ) não pode exceder 10.000 bytes. {"python_params":["john doe","35"]}

Use O que é uma referência de valor dinâmico? para definir parâmetros contendo informações sobre execuções de trabalho.

> [! IMPORTANTE] >> Estes parâmetros aceitam apenas caracteres latinos (conjunto de caracteres ASCII). > O uso de caracteres não-ASCII retornará um erro. Exemplos de caracteres > inválidos e não ASCII são chineses, kanjis japoneses e emojis.

RunResultState

O estado do resultado da execução.

  • Se life_cycle_state = TERMINATED: se a execução teve uma tarefa, o resultado é garantido estar disponível e indica o resultado da tarefa.
  • Se life_cycle_state = PENDING, RUNNINGou SKIPPED, o estado do resultado não estiver disponível.
  • If life_cycle_state = TERMINATING or lifecyclestate = INTERNAL_ERROR: o estado do resultado estará disponível se a execução tiver uma tarefa e tiver conseguido iniciá-la.

Uma vez disponível, o estado do resultado nunca muda.

Condição Description
SUCCESS A tarefa foi concluída com êxito.
FAILED A tarefa foi concluída com um erro.
TIMEDOUT A corrida foi interrompida depois de atingir o tempo limite.
CANCELED A execução foi cancelada a pedido do usuário.

RunState

Nome do Campo Tipo Description
life_cycle_state RunLifeCycleState Uma descrição da localização atual de uma execução no ciclo de vida da execução. Este campo está sempre disponível na resposta.
result_state RunResultState O estado do resultado de uma corrida. Se não estiver disponível, a resposta não incluirá este campo. Consulte RunResultState para obter detalhes sobre a disponibilidade de result_state.
user_cancelled_or_timedout BOOLEAN Se uma execução foi cancelada manualmente por um usuário ou pelo agendador porque a execução expirou.
state_message STRING Uma mensagem descritiva para o estado atual. Este campo não está estruturado e o seu formato exato está sujeito a alterações.

FaíscaConfPair

Pares chave-valor de configuração do Spark.

Tipo Description
STRING Um nome de propriedade de configuração.
STRING O valor da propriedade de configuração.

SparkEnvPair

Pares chave-valor variável do ambiente Spark.

Importante

Ao especificar variáveis de ambiente em um cluster de trabalho, os campos nessa estrutura de dados aceitam apenas caracteres latinos (conjunto de caracteres ASCII). O uso de caracteres não-ASCII retornará um erro. Exemplos de caracteres inválidos e não ASCII são chineses, kanjis japoneses e emojis.

Tipo Description
STRING Um nome de variável de ambiente.
STRING O valor da variável de ambiente.

SparkJarTask

Nome do Campo Tipo Description
jar_uri STRING Preterido desde 04/2016. Em vez disso, forneça um jar através do libraries campo. Para obter um exemplo, consulte Criar.
main_class_name STRING 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 Spark, caso contrário, as execuções do trabalho falharão.
parameters Uma matriz de STRING Parâmetros passados para o método principal.

Use O que é uma referência de valor dinâmico? para definir parâmetros contendo informações sobre execuções de trabalho.

SparkPythonTask

Nome do Campo Tipo Description
python_file STRING O URI do arquivo Python a ser executado. Caminhos DBFS são suportados. Este campo é obrigatório.
parameters Uma matriz de STRING Parâmetros de linha de comando passados para o arquivo Python.

Use O que é uma referência de valor dinâmico? para definir parâmetros contendo informações sobre execuções de trabalho.

SparkSubmitTask

Importante

  • Você pode invocar tarefas de envio do Spark somente em novos clusters.
  • No new_cluster especificação, libraries e spark_conf não são suportados. Em vez disso, use --jars e --py-files adicione bibliotecas Java e Python e --conf defina a configuração do Spark.
  • master, deploy-modee executor-cores são configurados automaticamente pelo Azure Databricks, não é possível especificá-los em parâmetros.
  • Por padrão, o trabalho de envio do Spark usa toda a memória disponível (excluindo a memória reservada para os serviços do Azure Databricks). Você pode definir --driver-memory, e --executor-memory para um valor menor para deixar algum espaço para uso fora da pilha.
  • Os --jarsargumentos , --py-files, --files suportam caminhos DBFS.

Por exemplo, supondo que o JAR seja carregado no DBFS, você pode executar SparkPi definindo os seguintes parâmetros.

{
  "parameters": [
    "--class",
    "org.apache.spark.examples.SparkPi",
    "dbfs:/path/to/examples.jar",
    "10"
  ]
}
Nome do Campo Tipo Description
parameters Uma matriz de STRING Parâmetros de linha de comando passados para envio de faísca.

Use O que é uma referência de valor dinâmico? para definir parâmetros contendo informações sobre execuções de trabalho.

Tipo de gatilho

Estes são os tipos de gatilhos que podem disparar uma corrida.

Tipo Description
PERIODIC Agendas que acionam execuções periodicamente, como um agendador cron.
ONE_TIME Uma vez dispara que dispare uma única corrida. Isso ocorre quando você acionou uma única execução sob demanda por meio da interface do usuário ou da API.
RETRY Indica uma execução que é acionada como uma nova tentativa de uma execução com falha anterior. Isso ocorre quando você solicita a execução do trabalho novamente em caso de falhas.

ViewItem

O conteúdo exportado está em formato HTML. Por exemplo, se a exibição a ser exportada for dashboards, uma cadeia de caracteres HTML será retornada para cada dashboard.

Nome do Campo Tipo Description
content STRING Conteúdo da vista.
name STRING Nome do item de exibição. No caso da visualização de código, o nome do notebook. No caso da visualização do painel, o nome do painel.
type ViewType Tipo do item de exibição.

ViewType

Tipo Description
NOTEBOOK Item de vista do bloco de notas.
DASHBOARD Item de visualização do painel.

ViewsToExport

Visualização para exportação: código, todos os painéis ou todos.

Tipo Description
CODE Visualização de código do bloco de anotações.
DASHBOARDS Todas as vistas do painel de notas do bloco de notas.
ALL Todas as vistas do caderno.

Gancho de teia

Nome do Campo Tipo Description
id STRING Identificador que faz referência a um destino de notificação do sistema. Este campo é obrigatório.

WebhookNotificações

Nome do Campo Tipo Description
on_start Uma matriz de Webhook Uma lista opcional de destinos do sistema a serem notificados quando uma execução começa. Se não for especificado na criação, redefinição ou atualização do trabalho, a lista estará vazia e as notificações não serão enviadas. Um máximo de 3 destinos podem ser especificados para a on_start propriedade.
on_success Uma matriz de Webhook Uma lista opcional de destinos do sistema a serem notificados quando uma execução for concluída com êxito. Uma execução é considerada concluída com êxito se terminar com a TERMINATED e a SUCCESSFUL result_state.life_cycle_state Se não for especificado na criação, redefinição ou atualização do trabalho, a lista estará vazia e as notificações não serão enviadas. Um máximo de 3 destinos podem ser especificados para a on_success propriedade.
on_failure Uma matriz de Webhook Uma lista opcional de destinos do sistema a serem notificados quando uma execução for concluída sem êxito. Considera-se que uma execução foi concluída sem êxito se terminar com um INTERNAL_ERROR
life_cycle_state ou um SKIPPED, FAILED, ou TIMED_OUT result_state. Se isso não for especificado na criação de trabalho, redefinição ou atualização, a lista estará vazia e as notificações não serão enviadas. Um máximo de 3 destinos podem ser especificados para a on_failure propriedade.
on_duration_warning_threshold_exceeded Uma matriz de Webhook Uma lista opcional de destinos do sistema a serem notificados quando a duração de uma corrida exceder o limite especificado para a RUN_DURATION_SECONDS métrica no health campo. Um máximo de 3 destinos podem ser especificados para a on_duration_warning_threshold_exceeded propriedade.

WorkspaceStorageInfo

Informações de armazenamento do espaço de trabalho.

Nome do Campo Tipo Description
destination STRING Destino do ficheiro. Exemplo: /Users/someone@domain.com/init_script.sh