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:
<databricks-instance>
com o nome da instância do espaço de trabalho do Azure Databricks, por exemploadb-1234567890123456.7.azuredatabricks.net
.- O conteúdo de
create-job.json
com campos que são apropriados para a sua solução.
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 OUspark_python_task OU spark_submit_task OUpipeline_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 ouINTERNAL_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:
<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 exemplo123
.
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:
<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 exemplo123
.
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:
<databricks-instance>
com o nome da instância do espaço de trabalho do Azure Databricks, por exemploadb-1234567890123456.7.azuredatabricks.net
.- O conteúdo de
reset-job.json
com campos que são apropriados para a sua solução.
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:
<databricks-instance>
com o nome da instância do espaço de trabalho do Azure Databricks, por exemploadb-1234567890123456.7.azuredatabricks.net
.- O conteúdo de
update-job.json
com campos que são apropriados para a sua solução.
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 oujob_cluster_key e 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:
<databricks-instance>
com o nome da instância do espaço de trabalho do Azure Databricks, por exemploadb-1234567890123456.7.azuredatabricks.net
.- O conteúdo de
run-job.json
com campos que são apropriados para a sua solução.
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:
<databricks-instance>
com o nome da instância do espaço de trabalho do Azure Databricks, por exemploadb-1234567890123456.7.azuredatabricks.net
.- O conteúdo de
submit-job.json
com campos que são apropriados para a sua solução.
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 OUspark_python_task OU spark_submit_task OUpipeline_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 exemplo123
.- "
<true-false>
comtrue
oufalse
". <offset>
com ooffset
valor.<limit>
com olimit
valor.<run-type>
com orun_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:
<databricks-instance>
com o nome da instância do espaço de trabalho do Azure Databricks, por exemploadb-1234567890123456.7.azuredatabricks.net
.<run-id>
com o ID da execução, por exemplo123
.
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_duration e 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 dorun_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_duration e ocleanup_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_duration e 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 dasetup_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:
<databricks-instance>
com o nome da instância do espaço de trabalho do Azure Databricks, por exemploadb-1234567890123456.7.azuredatabricks.net
.<run-id>
com o ID da execução, por exemplo123
.
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:
<databricks-instance>
com o nome da instância do espaço de trabalho do Azure Databricks, por exemploadb-1234567890123456.7.azuredatabricks.net
.<run-id>
com o ID da execução, por exemplo123
.
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:
<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 exemplo123
.
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:
<databricks-instance>
com o nome da instância do espaço de trabalho do Azure Databricks, por exemploadb-1234567890123456.7.azuredatabricks.net
.<run-id>
com o ID da execução, por exemplo123
.
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 chamardbutils.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:
<databricks-instance>
com o nome da instância do espaço de trabalho do Azure Databricks, por exemploadb-1234567890123456.7.azuredatabricks.net
.<run-id>
com o ID da execução, por exemplo123
.
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
- AutoDimensionamento
- AzureAttributes
- AzureAvailability
- ClusterInstance
- ClusterLogConf
- ClusterSpec
- ClusterTag
- CronSchedule
- DbfsStorageInfo
- FileStorageInfo
- InitScriptInfo
- Tarefa
- JobEmailNotifications
- JobNotificationSettings
- JobSettings
- JobTask
- JobsHealthRule
- JobsHealthRules
- Biblioteca
- MavenLibrary
- NewCluster
- Saída de Notebook
- NotebookTask
- ParamPair
- PipelineTask
- Biblioteca PythonPyPi
- RCranLibrary
- Executar
- RunJobTask
- RunLifeCycleState
- RunParameters
- RunResultState
- RunState
- FaíscaConfPair
- SparkEnvPair
- SparkJarTask
- SparkPythonTask
- SparkSubmitTask
- Tipo de gatilho
- ViewItem
- ViewType
- ViewsToExport
- Webhook
- WebhookNotificações
- WorkspaceStorageInfo
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 , microsoft ou 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 OUdbfs (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 OUspark_python_task OU spark_submit_task OUpipeline_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 ouINTERNAL_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 pararunNow . |
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 OUspark_python_task OU spark_submit_task OUpipeline_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 OUpypi 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 viaspark.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_params
ou 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
,RUNNING
ouSKIPPED
, 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
espark_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-mode
eexecutor-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
--jars
argumentos ,--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 |