Jobs API 2.0

La API Jobs permite crear, editar y eliminar trabajos. El tamaño máximo permitido de una solicitud a la API Jobs es de 10 MB. Consulte Creación de un clúster de alta simultaneidad para obtener una guía paso a paso sobre esta API.

Para obtener más información sobre actualizaciones de la API Jobs compatibles con la orquestación de varias tareas con trabajos de Azure Databricks, consulte Actualizaciones de la API Jobs.

Advertencia

Nunca debe codificar de forma rígida los secretos ni almacenarlos en texto sin formato. Use Secrets API 2.0 para administrar secretos en la configuración y documentación de la CLI de Databricks. Cómo usar la utilidad Secrets (dbutils.secrets) para hacer referencia a secretos en cuadernos y trabajos.

Nota:

Si recibe un error de nivel 500 al realizar solicitudes de a la API Jobs, Databricks recomienda reintentar las solicitudes durante hasta 10 minutos (con un intervalo mínimo de 30 segundos entre reintentos).

Importante

Para acceder a las API REST de Databricks, es preciso autenticarse.

Crear

punto de conexión Método HTTP
2.0/jobs/create POST

Cree un trabajo.

Ejemplo

En este ejemplo se crea un trabajo que ejecuta una tarea JAR todas las noches a las 10:15 p. m.

Request

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"
  }
}

Sustituya:

  • <databricks-instance> por el nombre de instancia de área de trabajo de Azure Databricks, por ejemplo adb-1234567890123456.7.azuredatabricks.net.
  • El contenido de create-job.json por los campos adecuados para la solución.

En este ejemplo se usa un archivo .netrc y jq.

Respuesta

{
  "job_id": 1
}

Estructura de la solicitud

Importante

  • Cuando se ejecuta un trabajo en un nuevo clúster de trabajos, el trabajo se trata como una carga de proceso de trabajos (automática) sujeta a los precios de procesos de trabajos.
  • Cuando se ejecuta un trabajo en un clúster de uso general existente, se trata como una carga de trabajo de proceso multiuso (interactiva) sujeta a los precios procesos multiuso.
Nombre del campo Tipo Descripción
existing_cluster_id O new_cluster STRING O NewCluster Si existing_cluster_id, el identificador de un clúster existente que se usará para todas las ejecuciones de este trabajo. Al ejecutar trabajos en un clúster existente, es posible que tenga que reiniciar manualmente el clúster si deja de responder. Se recomienda ejecutar trabajos en clústeres nuevos para mayor confiabilidad.

Si new_cluster, una descripción de un clúster que se creará para cada ejecución.

Si especifica PipelineTask, este campo puede estar vacío.
notebook_task O spark_jar_task O spark_python_task O spark_submit_task O pipeline_task NotebookTask O SparkJarTask O SparkPythonTask O SparkSubmitTask O PipelineTask Si notebook_task, indica que este trabajo debe ejecutar un cuaderno. Es posible que este campo no se especifique junto con spark_jar_task.

Si spark_jar_task, indica que este trabajo debe ejecutar un archivo JAR.

Si spark_python_task, indica que este trabajo debe ejecutar un archivo Python.

Si spark_submit_task, indica que el script de envío de Spark debe iniciar este trabajo.

Si pipeline_task, indica que este trabajo debe ejecutar una canalización de Delta Live Tables.
name STRING Nombre opcional del trabajo. El valor predeterminado es Untitled.
libraries Matriz de Library Lista opcional de bibliotecas para instalar en el clúster que ejecutará el trabajo. El valor predeterminado es una lista vacía.
email_notifications JobEmailNotifications Conjunto opcional de direcciones de correo electrónico que se notifican cuando las ejecuciones de este trabajo comienzan y se completan, y cuando se elimina este trabajo. El comportamiento predeterminado es no enviar ningún correo electrónico.
webhook_notifications WebhookNotifications Un conjunto opcional de destinos del sistema que se notificará cuando se inicien, completen o produzcan errores en las ejecuciones de este trabajo.
timeout_seconds INT32 Tiempo de espera opcional que se aplica a cada ejecución de este trabajo. El comportamiento predeterminado es no tener ningún tiempo de espera.
max_retries INT32 Número máximo opcional de veces que se volverá a intentar una ejecución incorrecta. Se considera que una ejecución es incorrecta si se completa con el valor FAILEDresult_state o
INTERNAL_ERROR
life_cycle_state. El valor -1 significa que la ejecución se volverá a intentar indefinidamente, mientras que el valor 0 significa que no se volverá a intentar nunca. El comportamiento predeterminado es no volver a intentar la ejecución nunca.
min_retry_interval_millis INT32 Intervalo mínimo opcional en milisegundos entre el inicio de la ejecución con errores y la ejecución del reintento siguiente. El comportamiento predeterminado es que las ejecuciones incorrectas se vuelvan a intentar de inmediato.
retry_on_timeout BOOL Directiva opcional para especificar si se debe volver a intentar un trabajo tras agotarse el tiempo de espera. El comportamiento predeterminado es no volver a intentarlo tras agotarse el tiempo de espera.
schedule CronSchedule Programación periódica opcional para este trabajo. El comportamiento predeterminado es que el trabajo se ejecute cuando se desencadena al hacer clic en Ejecutar ahora en la interfaz de usuario de Jobs o al enviar una solicitud de API a runNow.
max_concurrent_runs INT32 Número máximo permitido opcional de ejecuciones simultáneas del trabajo.

Establezca este valor si desea poder ejecutar varias ejecuciones del mismo trabajo de manera simultánea. Esto es útil, por ejemplo, si desencadena el trabajo con una programación frecuente y desea permitir que las ejecuciones consecutivas se superpongan entre sí, o bien si desea desencadenar varias ejecuciones que difieren en sus parámetros de entrada.

Esta configuración solo afecta a las nuevas ejecuciones. Por ejemplo, suponga que la simultaneidad del trabajo es 4 y hay 4 ejecuciones activas simultáneas. Si se establece la simultaneidad en 3, no se eliminará ninguna de las ejecuciones activas. Sin embargo, a partir de ese momento, se omitirán las nuevas ejecuciones a menos que haya menos de tres ejecuciones activas.

El valor no puede ser mayor que 1000. Al establecer este valor en 0, se omitirán todas las ejecuciones nuevas. El comportamiento predeterminado es permitir solo una ejecución simultánea.

Estructura de la respuesta

Nombre del campo Tipo Descripción
job_id INT64 Identificador canónico del trabajo que se acaba de crear.

Lista

punto de conexión Método HTTP
2.0/jobs/list GET

Enumera todos los trabajos.

Ejemplo

Solicitud

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

Reemplace <databricks-instance> por el nombre de instancia de área de trabajo de Azure Databricks, por ejemplo adb-1234567890123456.7.azuredatabricks.net.

En este ejemplo se usa un archivo .netrc y jq.

Respuesta

{
  "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
    }
  ]
}

Estructura de la respuesta

Nombre del campo Tipo Descripción
jobs Matriz de tipo Job. Lista de trabajos.

Delete

punto de conexión Método HTTP
2.0/jobs/delete POST

Elimine un trabajo y envíe un correo electrónico a las direcciones que se especificaron en JobSettings.email_notifications. No se realizará ninguna acción si el trabajo ya se ha quitado. Después de quitar el trabajo, ni sus detalles ni su historial de ejecución estarán visibles en la interfaz de usuario de Jobs o en la API. Se garantiza que el trabajo se quitará tras finalizar esta solicitud. Sin embargo, las ejecuciones que estaban activas antes de la recepción de esta solicitud pueden seguir estando activas. Estas finalizarán de forma asincrónica.

Ejemplo

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

Sustituya:

  • <databricks-instance> por el nombre de instancia de área de trabajo de Azure Databricks, por ejemplo adb-1234567890123456.7.azuredatabricks.net.
  • <job-id> con el identificador del trabajo, como, por ejemplo, 123.

En este ejemplo se usa un archivo .netrc.

Estructura de la solicitud

Nombre del campo Tipo Descripción
job_id INT64 Identificador canónico del trabajo que se va a eliminar. Este campo es obligatorio.

Get

punto de conexión Método HTTP
2.0/jobs/get GET

Recupera información acerca de un trabajo sencillo.

Ejemplo

Solicitud

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

O:

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

Sustituya:

  • <databricks-instance> por el nombre de instancia de área de trabajo de Azure Databricks, por ejemplo adb-1234567890123456.7.azuredatabricks.net.
  • <job-id> con el identificador del trabajo, como, por ejemplo, 123.

En este ejemplo se usa un archivo .netrc y jq.

Respuesta

{
  "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
}

Estructura de la solicitud

Nombre del campo Tipo Descripción
job_id INT64 Identificador canónico del trabajo del que se va a recuperar información. Este campo es obligatorio.

Estructura de la respuesta

Nombre del campo Tipo Descripción
job_id INT64 Identificador canónico de este trabajo.
creator_user_name STRING Nombre de usuario del creador. Este campo no se incluirá en la respuesta si se ha eliminado el usuario.
configuración JobSettings Configuración para este trabajo y todas sus ejecuciones. Esta configuración se puede actualizar mediante los puntos de conexión Reset o Update.
created_time INT64 Hora a la que se creó este trabajo en milisegundos (milisegundos desde el 1/1/1970 UTC).

Reset

punto de conexión Método HTTP
2.0/jobs/reset POST

Sobrescriba toda la configuración de un trabajo específico. Use el punto de conexión Update para actualizar parcialmente la configuración del trabajo.

Ejemplo

Esta solicitud de ejemplo hace que el trabajo 2 sea idéntico al trabajo 1 en el ejemplo 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"
    }
  }
}

Sustituya:

  • <databricks-instance> por el nombre de instancia de área de trabajo de Azure Databricks, por ejemplo adb-1234567890123456.7.azuredatabricks.net.
  • El contenido de reset-job.json por los campos adecuados para la solución.

En este ejemplo se usa un archivo .netrc y jq.

Estructura de la solicitud

Nombre del campo Tipo Descripción
job_id INT64 Identificador canónico del trabajo que se va a restablecer. Este campo es obligatorio.
new_settings JobSettings Nueva configuración del trabajo. Esta configuración reemplaza completamente la configuración anterior.

Los cambios que se realizan en el campo JobSettings.timeout_seconds se aplican a las ejecuciones activas. Los cambios que se realizan en otros campos solo se aplican a ejecuciones futuras.

Update

punto de conexión Método HTTP
2.0/jobs/update POST

Agregue, cambie o quite la configuración específica de un trabajo existente. Use el punto de conexión Reset para sobrescribir toda la configuración del trabajo.

Ejemplo

Esta solicitud de ejemplo quita las bibliotecas y agrega la configuración de notificación por correo electrónico al trabajo 1 que se definió en el ejemplo 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"]
}

Sustituya:

  • <databricks-instance> por el nombre de instancia de área de trabajo de Azure Databricks, por ejemplo adb-1234567890123456.7.azuredatabricks.net.
  • El contenido de update-job.json por los campos adecuados para la solución.

En este ejemplo se usa un archivo .netrc y jq.

Estructura de la solicitud

Nombre del campo Tipo Descripción
job_id INT64 Identificador canónico del trabajo que se va a actualizar. Este campo es obligatorio.
new_settings JobSettings Nueva configuración del trabajo. Todos los campos de nivel superior especificados en new_settings se reemplazan completamente. No se admite la actualización parcial de campos anidados.

Los cambios que se realizan en el campo JobSettings.timeout_seconds se aplican a las ejecuciones activas. Los cambios que se realizan en otros campos solo se aplican a ejecuciones futuras.
fields_to_remove Matriz de objetos STRING. Quita los campos de nivel superior de la configuración del trabajo. No se pueden quitar los campos anidados. Este campo es opcional.

Run now

Importante

  • Solo puede crear trabajos en áreas de trabajo de Data Science & Engineering o de Machine Learning.
  • Un área de trabajo está limitada a 1000 ejecuciones de trabajo simultáneas. Se devuelve una respuesta 429 Too Many Requests cuando se solicita una ejecución que no se puede iniciar inmediatamente.
  • El número de trabajos que puede crear un área de trabajo en una hora está limitado a 10000 (incluye "envío de ejecuciones"). Este límite también afecta a los trabajos creados por los flujos de trabajo de la API REST y del cuaderno.
punto de conexión Método HTTP
2.0/jobs/run-now POST

Ejecute un trabajo ahora y devuelva la ejecución desencadenada run_id.

Sugerencia

Si invoca Create con Run now, puede usar el punto de conexión Runs submit en su lugar. Esto le permite enviar la carga de trabajo directamente sin tener que crear ningún trabajo.

Ejemplo

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

run-job.json:

Solicitud de ejemplo para un trabajo de cuaderno:

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

Solicitud de ejemplo para un trabajo JAR:

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

Sustituya:

  • <databricks-instance> por el nombre de instancia de área de trabajo de Azure Databricks, por ejemplo adb-1234567890123456.7.azuredatabricks.net.
  • El contenido de run-job.json por los campos adecuados para la solución.

En este ejemplo se usa un archivo .netrc y jq.

Estructura de la solicitud

Nombre del campo Tipo Descripción
job_id INT64
jar_params Matriz de objetos STRING. Lista de parámetros para trabajos con tareas JAR, por ejemplo, "jar_params": ["john doe", "35"]. Los parámetros se usarán para invocar la función main de la clase principal especificada en la tarea JAR de Spark. Si no se especifica en run-now, el valor predeterminado será una lista vacía. jar_params no se puede especificar junto con notebook_params. La representación JSON de este campo (es decir, {"jar_params":["john doe","35"]}) no puede superar los 10 000 bytes.
notebook_params Asignación de ParamPair Asignación de claves a valores para trabajos con tarea de cuaderno, como, por ejemplo,
"notebook_params": {"name": "john doe", "age": "35"}. La asignación se pasa al cuaderno y está disponible a través de la función dbutils.widgets.get.

Si no se especifica en run-now, la ejecución desencadenada usa los parámetros base del trabajo.

No puede especificar notebook_params junto con jar_params.

La representación JSON de este campo (es decir,
{"notebook_params":{"name":"john doe","age":"35"}}) no puede superar los 10 000 bytes.
python_params Matriz de objetos STRING. Lista de parámetros para trabajos con tareas Python, por ejemplo, "python_params": ["john doe", "35"]. Los parámetros se pasarán al archivo de Python como parámetros de línea de comandos. Si se especificara en run-now, se sobrescribirían los parámetros especificados en la configuración del trabajo. La representación JSON de este campo (es decir, {"python_params":["john doe","35"]}) no puede superar los 10 000 bytes.
spark_submit_params Matriz de objetos STRING. Lista de parámetros para los trabajos con la tarea de envío de Spark, como, por ejemplo,
"spark_submit_params": ["--class", "org.apache.spark.examples.SparkPi"]. Los parámetros se pasarán al script spark-submit como parámetros de línea de comandos. Si se especificara en run-now, se sobrescribirían los parámetros especificados en la configuración del trabajo. La representación JSON de este campo no puede superar los 10 000 bytes.
idempotency_token STRING Token opcional para garantizar la idempotencia de las solicitudes de ejecución de trabajos. Si ya existe una ejecución con el token proporcionado, la solicitud no crea ninguna nueva ejecución sino que devuelve el identificador de la ejecución existente en su lugar. Si se elimina una ejecución con el token proporcionado, se devuelve un error.

Si especifica el token de idempotencia, podrá volver a intentar realizar la solicitud hasta que esta se complete correctamente en caso de error. Azure Databricks garantiza que se iniciará exactamente una ejecución con ese token de idempotencia.

Este token debe tener como máximo 64 caracteres.

Para obtener más información, consulte Cómo garantizar la idempotencia de los trabajos.

Estructura de la respuesta

Nombre del campo Tipo Descripción
run_id INT64 Identificador único global de la ejecución recién desencadenada.
number_in_job INT64 Número de secuencia de esta ejecución entre todas las ejecuciones del trabajo.

Runs submit

Importante

  • Solo puede crear trabajos en áreas de trabajo de Data Science & Engineering o de Machine Learning.
  • Un área de trabajo está limitada a 1000 ejecuciones de trabajo simultáneas. Se devuelve una respuesta 429 Too Many Requests cuando se solicita una ejecución que no se puede iniciar inmediatamente.
  • El número de trabajos que puede crear un área de trabajo en una hora está limitado a 10000 (incluye "envío de ejecuciones"). Este límite también afecta a los trabajos creados por los flujos de trabajo de la API REST y del cuaderno.
punto de conexión Método HTTP
2.0/jobs/runs/submit POST

Envío de una ejecución puntual. Este punto de conexión permite enviar una carga de trabajo directamente sin crear ningún trabajo. Use la API jobs/runs/get para comprobar el estado de la ejecución después de enviar el trabajo.

Ejemplo

Solicitud

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"
  }
}

Sustituya:

  • <databricks-instance> por el nombre de instancia de área de trabajo de Azure Databricks, por ejemplo adb-1234567890123456.7.azuredatabricks.net.
  • El contenido de submit-job.json por los campos adecuados para la solución.

En este ejemplo se usa un archivo .netrc y jq.

Respuesta

{
  "run_id": 123
}

Estructura de la solicitud

Importante

  • Cuando se ejecuta un trabajo en un nuevo clúster de trabajos, el trabajo se trata como una carga de proceso de trabajos (automática) sujeta a los precios de procesos de trabajos.
  • Cuando se ejecuta un trabajo en un clúster de uso general existente, se trata como una carga de trabajo de proceso multiuso (interactiva) sujeta a los precios procesos multiuso.
Nombre del campo Tipo Descripción
existing_cluster_id O new_cluster STRING O NewCluster Si existing_cluster_id, el identificador de un clúster existente que se usará para todas las ejecuciones de este trabajo. Al ejecutar trabajos en un clúster existente, es posible que tenga que reiniciar manualmente el clúster si deja de responder. Se recomienda ejecutar trabajos en clústeres nuevos para mayor confiabilidad.

Si new_cluster, una descripción de un clúster que se creará para cada ejecución.

Si especifica PipelineTask, este campo puede estar vacío.
notebook_task O spark_jar_task O spark_python_task O spark_submit_task O pipeline_task NotebookTask O SparkJarTask O SparkPythonTask O SparkSubmitTask O PipelineTask Si notebook_task, indica que este trabajo debe ejecutar un cuaderno. Es posible que este campo no se especifique junto con spark_jar_task.

Si spark_jar_task, indica que este trabajo debe ejecutar un archivo JAR.

Si spark_python_task, indica que este trabajo debe ejecutar un archivo Python.

Si spark_submit_task, indica que el script de envío de Spark debe iniciar este trabajo.

Si pipeline_task, indica que este trabajo debe ejecutar una canalización de Delta Live Tables.
run_name STRING Nombre opcional de la ejecución. El valor predeterminado es Untitled.
webhook_notifications WebhookNotifications Un conjunto opcional de destinos del sistema que se notificará cuando se inicien, completen o produzcan errores en las ejecuciones de este trabajo.
libraries Matriz de Library Lista opcional de bibliotecas para instalar en el clúster que ejecutará el trabajo. El valor predeterminado es una lista vacía.
timeout_seconds INT32 Tiempo de espera opcional que se aplica a cada ejecución de este trabajo. El comportamiento predeterminado es no tener ningún tiempo de espera.
idempotency_token STRING Token opcional para garantizar la idempotencia de las solicitudes de ejecución de trabajos. Si ya existe una ejecución con el token proporcionado, la solicitud no crea ninguna nueva ejecución sino que devuelve el identificador de la ejecución existente en su lugar. Si se elimina una ejecución con el token proporcionado, se devuelve un error.

Si especifica el token de idempotencia, podrá volver a intentar realizar la solicitud hasta que esta se complete correctamente en caso de error. Azure Databricks garantiza que se iniciará exactamente una ejecución con ese token de idempotencia.

Este token debe tener como máximo 64 caracteres.

Para obtener más información, consulte Cómo garantizar la idempotencia de los trabajos.

Estructura de la respuesta

Nombre del campo Tipo Descripción
run_id INT64 Identificador canónico de la ejecución que se acaba de enviar.

Runs list

punto de conexión Método HTTP
2.0/jobs/runs/list GET

Enumera las ejecuciones en orden descendente por hora de inicio.

Nota:

Las ejecuciones se quitan automáticamente después de 60 días. Si desea poder consultarlas más allá de 60 días, debe guardar los resultados de ejecución antiguos antes de que expiren. Para exportar mediante la interfaz de usuario, consulte Exportación de los resultados de la ejecución de trabajos. Para exportar mediante la API Jobs, Exportación de ejecuciones.

Ejemplo

Solicitud

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 .

O:

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 .

Sustituya:

  • <databricks-instance> por el nombre de instancia de área de trabajo de Azure Databricks, por ejemplo adb-1234567890123456.7.azuredatabricks.net.
  • <job-id> con el identificador del trabajo, como, por ejemplo, 123.
  • <true-false> con true o false.
  • <offset> con el valor offset.
  • <limit> con el valor limit.
  • <run-type> con el valor run_type.

En este ejemplo se usa un archivo .netrc y jq.

Respuesta

{
  "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
}

Estructura de la solicitud

Nombre del campo Tipo Descripción
active_only O completed_only BOOL oBOOL Si active_only es true, solo se incluyen las ejecuciones activas en los resultados; de lo contrario, se muestran las ejecuciones activas y completadas. Una ejecución activa es una ejecución en PENDING, RUNNING o TERMINATINGRunLifecycleState. Este campo no puede ser true cuando completed_only es true.

Si completed_only es true, solo se incluyen las ejecuciones completadas en los resultados; de lo contrario, se muestran las ejecuciones activas y completadas. Este campo no puede ser true cuando active_only es true.
job_id INT64 Trabajo para el que se muestran las ejecuciones. Si se omite, el servicio Jobs mostrará las ejecuciones de todos los trabajos.
offset INT32 Desplazamiento de la primera ejecución que se debe devolver con respecto a la ejecución más reciente.
limit INT32 Número de ejecuciones que se deben devolver. Este valor debe ser mayor que 0 y menor que 1000. El valor predeterminado es 20. Si una solicitud especifica un límite de 0, el servicio usará en su lugar el límite máximo.
run_type STRING Tipo de ejecuciones que se deben devolver. Para obtener una descripción de los tipos de ejecución, consulte Ejecución.

Estructura de la respuesta

Nombre del campo Tipo Descripción
 ejecuciones Matriz de Run. Lista de ejecuciones, desde la que se inició más recientemente hasta la más antigua.
has_more BOOL Si es true, hay disponibles ejecuciones adicionales que coinciden con el filtro proporcionado para la lista.

Runs get

punto de conexión Método HTTP
2.0/jobs/runs/get GET

Permite recuperar los metadatos de una ejecución.

Nota:

Las ejecuciones se quitan automáticamente después de 60 días. Si desea poder consultarlas más allá de 60 días, debe guardar los resultados de ejecución antiguos antes de que expiren. Para exportar mediante la interfaz de usuario, consulte Exportación de los resultados de la ejecución de trabajos. Para exportar mediante la API Jobs, Exportación de ejecuciones.

Ejemplo

Solicitud

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

O:

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

Sustituya:

  • <databricks-instance> por el nombre de instancia de área de trabajo de Azure Databricks, por ejemplo adb-1234567890123456.7.azuredatabricks.net.
  • <run-id> con el identificador de la ejecución, como, por ejemplo, 123.

En este ejemplo se usa un archivo .netrc y jq.

Respuesta

{
  "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"
}

Estructura de la solicitud

Nombre del campo Tipo Descripción
run_id INT64 Identificador canónico de la ejecución para la que se deben recuperar los metadatos. Este campo es obligatorio.

Estructura de la respuesta

Nombre del campo Tipo Descripción
job_id INT64 Identificador canónico del trabajo que contiene esta ejecución.
run_id INT64 Identificador canónico de la ejecución. Este identificador es único en todas las ejecuciones de todos los trabajos.
number_in_job INT64 Número de secuencia de esta ejecución entre todas las ejecuciones del trabajo. Este valor comienza en 1.
original_attempt_run_id INT64 Si esta ejecución es un reintento de un intento de ejecución anterior, este campo contendrá el run_id del intento original; de lo contrario, será igual que el run_id.
state RunState Estados del resultado y el ciclo de vida de la ejecución.
schedule CronSchedule Programación cron que desencadenó esta ejecución si la desencadenó el programador periódico.
task JobTask Tarea realizada que realizó la ejecución, si realizó alguna.
cluster_spec ClusterSpec Instantánea de la especificación del clúster del trabajo cuando se creó esta ejecución.
cluster_instance ClusterInstance Clúster que se usó para esta ejecución. Si se especifica que la ejecución use un nuevo clúster, este campo se establecerá una vez que el servicio Jobs haya solicitado un clúster para la ejecución.
overriding_parameters RunParameters Parámetros usados para esta ejecución.
start_time INT64 Hora a la que se inició esta ejecución en milisegundos (milisegundos desde el 1/1/1970 UTC). Puede que esta no sea la hora en que se inicia la ejecución de la tarea de trabajo; por ejemplo, si el trabajo está programado para ejecutarse en un nuevo clúster, esta sería la hora en que se emite la llamada de creación del clúster.
end_time INT64 Hora a la que finalizó esta ejecución en milisegundos (milisegundos desde el 1/1/1970 UTC). Este campo se establecerá en 0 si el trabajo sigue en ejecución.
setup_duration INT64 Tiempo que se tardó en configurar el clúster en milisegundos. En el caso de ejecuciones que se ejecutan en clústeres nuevos, este es el tiempo de creación del clúster; para las ejecuciones que se ejecutan en clústeres existentes, el tiempo será muy corto. La duración total de la ejecución es la suma de setup_duration,
execution_duration y cleanup_duration. El campo setup_duration se establece en 0 para ejecuciones de trabajos de varias tareas. La duración total de una ejecución de trabajos de varias tareas es el valor del
campo run_duration.
execution_duration INT64 Tiempo en milisegundos que se tardó en ejecutar los comandos en el archivo JAR o en el cuaderno hasta que se completaron, hasta que se produjo un error, hasta que se agotó el tiempo de espera, hasta que se cancelaron o hasta que se produjo un error inesperado. La duración total de la ejecución es la suma de setup_duration, execution_duration y
cleanup_duration. El campo execution_duration se establece en 0 para ejecuciones de trabajos de varias tareas. La duración total de una ejecución de trabajos de varias tareas es el valor del campo run_duration.
cleanup_duration INT64 Tiempo en milisegundos que se tardó en finalizar el clúster y limpiar los artefactos asociados. La duración total de la ejecución es la suma de setup_duration, execution_duration y cleanup_duration. El campo cleanup_duration se establece en 0 para ejecuciones de trabajos de varias tareas. La duración total de una ejecución de trabajos de varias tareas es el valor del campo run_duration.
run_duration INT64 El tiempo en milisegundos que tardó en finalizar la ejecución del trabajo y todas sus reparaciones. Este campo solo se establece para las ejecuciones de trabajos de varias tareas y no para las ejecuciones de tareas. La duración de una ejecución de tarea es la suma de
setup_duration, execution_duration y cleanup_duration.
desencadenador TriggerType Tipo de desencadenador que desencadenó esta ejecución.
creator_user_name STRING Nombre de usuario del creador. Este campo no se incluirá en la respuesta si se ha eliminado el usuario.
run_page_url STRING Dirección URL de la página de detalles de la ejecución.

Runs export

punto de conexión Método HTTP
2.0/jobs/runs/export GET

Permite exportar y recuperar la tarea de ejecución del trabajo.

Nota:

Solo las ejecuciones de cuadernos se pueden exportar en formato HTML. Se producirá un error si se exportan ejecuciones de otros tipos.

Ejemplo

Solicitud

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

O:

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

Sustituya:

  • <databricks-instance> por el nombre de instancia de área de trabajo de Azure Databricks, por ejemplo adb-1234567890123456.7.azuredatabricks.net.
  • <run-id> con el identificador de la ejecución, como, por ejemplo, 123.

En este ejemplo se usa un archivo .netrc y jq.

Respuesta

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

Para extraer el cuaderno HTML de la respuesta JSON, descargue y ejecute este script de Python.

Nota:

El cuerpo del cuaderno del objeto __DATABRICKS_NOTEBOOK_MODEL está codificado.

Estructura de la solicitud

Nombre del campo Tipo Descripción
run_id INT64 Identificador canónico de la ejecución. Este campo es obligatorio.
views_to_export ViewsToExport Indica las vistas que se exportarán (CODE, DASHBOARDS o ALL). El valor predeterminado es CODE.

Estructura de la respuesta

Nombre del campo Tipo Descripción
views Matriz de ViewItem Contenido exportado en formato HTML (uno para cada elemento de visualización).

Runs cancel

punto de conexión Método HTTP
2.0/jobs/runs/cancel POST

Cancelar de la ejecución de un trabajo. Como la ejecución se cancela de forma asincrónica, cuando se complete esta solicitud, es posible que la ejecución siga en ejecución. La ejecución finalizará en breve. Si la ejecución ya está en estado terminal life_cycle_state, este método es del tipo no-op.

Este punto de conexión valida que el parámetro run_id sea válido y devuelve para los parámetros no válidos el código de estado HTTP 400.

Ejemplo

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

Sustituya:

  • <databricks-instance> por el nombre de instancia de área de trabajo de Azure Databricks, por ejemplo adb-1234567890123456.7.azuredatabricks.net.
  • <run-id> con el identificador de la ejecución, como, por ejemplo, 123.

En este ejemplo se usa un archivo .netrc.

Estructura de la solicitud

Nombre del campo Tipo Descripción
run_id INT64 Identificador canónico de la ejecución que se va a cancelar. Este campo es obligatorio.

Cancelar de todas las ejecuciones

punto de conexión Método HTTP
2.0/jobs/runs/cancel-all POST

Cancele todas las ejecuciones activas de un trabajo. Dado que la ejecución se cancela de forma asincrónica, no impide que se inicien nuevas ejecuciones.

Este punto de conexión valida que el parámetro job_id sea válido y devuelve para los parámetros no válidos el código de estado HTTP 400.

Ejemplo

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

Sustituya:

  • <databricks-instance> por el nombre de instancia de área de trabajo de Azure Databricks, por ejemplo adb-1234567890123456.7.azuredatabricks.net.
  • <job-id> con el identificador del trabajo, como, por ejemplo, 123.

En este ejemplo se usa un archivo .netrc.

Estructura de la solicitud

Nombre del campo Tipo Descripción
job_id INT64 Identificador canónico del trabajo del que se va a cancelar todas las ejecuciones. Este campo es obligatorio.

Runs get output

punto de conexión Método HTTP
2.0/jobs/runs/get-output GET

Recupera la salida y los metadatos de una única ejecución de la tarea. Cuando una tarea de cuaderno devuelve un valor a través de la llamada dbutils.notebook.exit(), puede usar este punto de conexión para recuperar dicho valor. Azure Databricks restringe esta API para que devuelva los primeros 5 MB de la salida. Para devolver mayores resultados, puede almacenar los resultados del trabajo en un servicio de almacenamiento en la nube.

Este punto de conexión valida que el parámetro run_id sea válido y devuelve para los parámetros no válidos el código de estado HTTP 400.

Las ejecuciones se quitan automáticamente después de 60 días. Si desea poder consultarlas más allá de 60 días, debe guardar los resultados de ejecución antiguos antes de que expiren. Para exportar mediante la interfaz de usuario, consulte Exportación de los resultados de la ejecución de trabajos. Para exportar mediante la API Jobs, Exportación de ejecuciones.

Ejemplo

Solicitud

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

O:

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

Sustituya:

  • <databricks-instance> por el nombre de instancia de área de trabajo de Azure Databricks, por ejemplo adb-1234567890123456.7.azuredatabricks.net.
  • <run-id> con el identificador de la ejecución, como, por ejemplo, 123.

En este ejemplo se usa un archivo .netrc y jq.

Respuesta

{
  "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()"
  }
}

Estructura de la solicitud

Nombre del campo Tipo Descripción
run_id INT64 Identificador canónico de la ejecución. En el caso de un trabajo con varias tareas, esta es el objeto run_id de una ejecución de tareas. Consulte Obtención del resultado de las ejecuciones. Este campo es obligatorio.

Estructura de la respuesta

Nombre del campo Tipo Descripción
notebook_output o error NotebookOutput O STRING Si notebook_output, se obtiene la salida de una tarea de cuaderno, si está disponible. Las tareas de cuaderno que finalizan (ya sea correctamente o con un error) sin llamar a
dbutils.notebook.exit() se consideran que tienen una salida vacía. Este campo se establecerá, pero su valor de resultado estará vacío.

Si se produce un error, se mostrará un mensaje de error para indicar por qué la salida no está disponible. El mensaje no está estructurado y su formato exacto está sujeto a cambios.
metadata Run Muestra todos los detalles de la ejecución excepto su salida.

Runs delete

punto de conexión Método HTTP
2.0/jobs/runs/delete POST

Elimina una ejecución no activa. Devuelve un error si la ejecución está activa.

Ejemplo

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

Sustituya:

  • <databricks-instance> por el nombre de instancia de área de trabajo de Azure Databricks, por ejemplo adb-1234567890123456.7.azuredatabricks.net.
  • <run-id> con el identificador de la ejecución, como, por ejemplo, 123.

En este ejemplo se usa un archivo .netrc.

Estructura de la solicitud

Nombre del campo Tipo Descripción
run_id INT64 Identificador canónico de la ejecución para la que se deben recuperar los metadatos.

Estructuras de datos

En esta sección:

ClusterInstance

Identificadores para el clúster y el contexto de Spark que usa una ejecución. Estos dos valores juntos identifican un contexto de ejecución en todo momento.

Nombre del campo Tipo Descripción
cluster_id STRING Identificador canónico del clúster que usó una ejecución. Este campo siempre está disponible para las ejecuciones en clústeres existentes. En el caso de las ejecuciones en clústeres nuevos, estará disponible después de crear el clúster. Este valor se puede usar para ver los registros si navega a /#setting/sparkui/$cluster_id/driver-logs. Los registros seguirán estando disponibles después de completar la ejecución.

La respuesta no incluirá este campo si el identificador aún no está disponible.
spark_context_id STRING Identificador canónico del contexto de Spark que usó una ejecución. Este campo se rellenará una vez que comience la ejecución. Este valor se puede usar para ver la interfaz de usuario de Spark si navega a /#setting/sparkui/$cluster_id/$spark_context_id. La interfaz de usuario de Spark seguirá estando disponible después de completar la ejecución.

La respuesta no incluirá este campo si el identificador aún no está disponible.

ClusterSpec

Importante

  • Cuando se ejecuta un trabajo en un nuevo clúster de trabajos, el trabajo se trata como una carga de proceso de trabajos (automática) sujeta a los precios de procesos de trabajos.
  • Cuando se ejecuta un trabajo en un clúster de uso general existente, se trata como una carga de trabajo de proceso multiuso (interactiva) sujeta a los precios procesos multiuso.
Nombre del campo Tipo Descripción
existing_cluster_id O new_cluster STRING O NewCluster Si existing_cluster_id, el identificador de un clúster existente que se usará para todas las ejecuciones de este trabajo. Al ejecutar trabajos en un clúster existente, es posible que tenga que reiniciar manualmente el clúster si deja de responder. Se recomienda ejecutar trabajos en clústeres nuevos para mayor confiabilidad.

Si new_cluster, una descripción de un clúster que se creará para cada ejecución.

Si especifica PipelineTask, este campo puede estar vacío.
libraries Matriz de Library Lista opcional de bibliotecas para instalar en el clúster que ejecutará el trabajo. El valor predeterminado es una lista vacía.

CronSchedule

Nombre del campo Tipo Descripción
quartz_cron_expression STRING Expresión Cron que usa la sintaxis Quartz que describe la programación de un trabajo. Consulte Desencadenador cron para obtener más información. Este campo es obligatorio.
timezone_id STRING Identificador de zona horaria de Java. La programación de un trabajo se resolverá con respecto a esta zona horaria. Consulte Zona horaria de Java para obtener más información. Este campo es obligatorio.
pause_status STRING Indica si esta programación está en pausa o no. El valor puede ser "PAUSED" o "UNPAUSED".

Job

Nombre del campo Tipo Descripción
job_id INT64 Identificador canónico de este trabajo.
creator_user_name STRING Nombre de usuario del creador. Este campo no se incluirá en la respuesta si ya se ha eliminado el usuario.
run_as STRING Nombre de usuario con el que se ejecutará el trabajo. run_as se basa en la configuración del trabajo actual y se establece en el creador del trabajo si el control de acceso del trabajo está deshabilitado o en is_owner si el control de acceso del trabajo está habilitado.
configuración JobSettings Configuración para este trabajo y todas sus ejecuciones. Esta configuración se puede actualizar con el método resetJob.
created_time INT64 Hora a la que se creó este trabajo en milisegundos (milisegundos desde el 1/1/1970 UTC).

JobEmailNotifications

Importante

Los campos on_start, on_success y on_failure solo aceptan caracteres latinos (juego de caracteres ASCII). El uso de caracteres que no sean ASCII devolverá un error. Algunos ejemplos de caracteres no válidos y que no son ASCII son los caracteres chinos, los kanjis japoneses y los emojis.

Nombre del campo Tipo Descripción
on_start Matriz de objetos STRING. Lista de direcciones de correo electrónico a las que se notificará cuando comience una ejecución. Si no se especifica en la creación, el restablecimiento o la actualización del trabajo, la lista estará vacía y no se enviarán notificaciones.
on_success Matriz de objetos STRING. Lista de direcciones de correo electrónico a las que se notificará cuando se complete correctamente una ejecución. Se considera que una ejecución se ha completado correctamente si termina con el estado TERMINATEDlife_cycle_state y SUCCESSFUL result_state. Si no se especifica en la creación, el restablecimiento o la actualización del trabajo, la lista estará vacía y no se enviarán notificaciones.
on_failure Matriz de objetos STRING. Lista de direcciones de correo electrónico a las que se notificará cuando una ejecución no se complete correctamente. Se considera que una ejecución no se ha completado incorrectamente si termina con el estado INTERNAL_ERROR
life_cycle_state o el estado SKIPPED, FAILED, o TIMED_OUT result_state. Si esto no se especifica en la creación, el restablecimiento o la actualización del trabajo, la lista estará vacía y no se enviarán las notificaciones.
no_alert_for_skipped_runs BOOL Si es true, no se envía correo electrónico a los destinatarios especificados en on_failure si se omite la ejecución.

JobSettings

Importante

  • Cuando se ejecuta un trabajo en un nuevo clúster de trabajos, el trabajo se trata como una carga de proceso de trabajos (automática) sujeta a los precios de procesos de trabajos.
  • Cuando se ejecuta un trabajo en un clúster de uso general existente, se trata como una carga de trabajo de proceso multiuso (interactiva) sujeta a los precios procesos multiuso.

Configuración de un trabajo Esta configuración se puede actualizar con el método resetJob.

Nombre del campo Tipo Descripción
existing_cluster_id O new_cluster STRING O NewCluster Si existing_cluster_id, el identificador de un clúster existente que se usará para todas las ejecuciones de este trabajo. Al ejecutar trabajos en un clúster existente, es posible que tenga que reiniciar manualmente el clúster si deja de responder. Se recomienda ejecutar trabajos en clústeres nuevos para mayor confiabilidad.

Si new_cluster, una descripción de un clúster que se creará para cada ejecución.

Si especifica PipelineTask, este campo puede estar vacío.
notebook_task O spark_jar_task O spark_python_task O spark_submit_task O pipeline_task NotebookTask O SparkJarTask O SparkPythonTask O SparkSubmitTask O PipelineTask Si notebook_task, indica que este trabajo debe ejecutar un cuaderno. Es posible que este campo no se especifique junto con spark_jar_task.

Si spark_jar_task, indica que este trabajo debe ejecutar un archivo JAR.

Si spark_python_task, indica que este trabajo debe ejecutar un archivo Python.

Si spark_submit_task, indica que el script de envío de Spark debe iniciar este trabajo.

Si pipeline_task, indica que este trabajo debe ejecutar una canalización de Delta Live Tables.
name STRING Nombre opcional del trabajo. El valor predeterminado es Untitled.
libraries Matriz de Library Lista opcional de bibliotecas para instalar en el clúster que ejecutará el trabajo. El valor predeterminado es una lista vacía.
email_notifications JobEmailNotifications Conjunto opcional de direcciones de correo electrónico a las que se notificará cuando comiencen o finalicen las ejecuciones de este trabajo, así como cuando se elimine este trabajo. El comportamiento predeterminado es no enviar ningún correo electrónico.
webhook_notifications WebhookNotifications Un conjunto opcional de destinos del sistema que se notificará cuando se inicien, completen o produzcan errores en las ejecuciones de este trabajo.
timeout_seconds INT32 Tiempo de espera opcional que se aplica a cada ejecución de este trabajo. El comportamiento predeterminado es no tener ningún tiempo de espera.
max_retries INT32 Número máximo opcional de veces que se volverá a intentar una ejecución incorrecta. Se considera que una ejecución es incorrecta si se completa con el valor FAILEDresult_state o
INTERNAL_ERROR
life_cycle_state. El valor -1 significa que la ejecución se volverá a intentar indefinidamente, mientras que el valor 0 significa que no se volverá a intentar nunca. El comportamiento predeterminado es no volver a intentar la ejecución nunca.
min_retry_interval_millis INT32 Intervalo mínimo opcional en milisegundos entre intentos. El comportamiento predeterminado es que las ejecuciones incorrectas se vuelvan a intentar de inmediato.
retry_on_timeout BOOL Directiva opcional para especificar si se debe volver a intentar un trabajo tras agotarse el tiempo de espera. El comportamiento predeterminado es no volver a intentarlo tras agotarse el tiempo de espera.
schedule CronSchedule Programación periódica opcional para este trabajo. El comportamiento predeterminado es que el trabajo solo se ejecutará cuando se desencadene al hacer clic en “Ejecutar ahora” en la interfaz de usuario de Jobs o al enviar una solicitud de API a
runNow.
max_concurrent_runs INT32 Número máximo permitido opcional de ejecuciones simultáneas del trabajo.

Establezca este valor si desea poder ejecutar varias ejecuciones del mismo trabajo de manera simultánea. Esto es útil, por ejemplo, si desencadena el trabajo con una programación frecuente y desea permitir que las ejecuciones consecutivas se superpongan entre sí, o bien si desea desencadenar varias ejecuciones que difieren en sus parámetros de entrada.

Esta configuración solo afecta a las nuevas ejecuciones. Por ejemplo, suponga que la simultaneidad del trabajo es 4 y hay 4 ejecuciones activas simultáneas. Si se establece la simultaneidad en 3, no se eliminará ninguna de las ejecuciones activas. Sin embargo, a partir de ese momento, se omitirán las nuevas ejecuciones a menos que haya menos de tres ejecuciones activas.

El valor no puede ser mayor que 1000. Al establecer este valor en 0, se omitirán todas las ejecuciones nuevas. El comportamiento predeterminado es permitir solo una ejecución simultánea.

JobTask

Nombre del campo Tipo Descripción
notebook_task O spark_jar_task O spark_python_task O spark_submit_task O pipeline_task NotebookTask O SparkJarTask O SparkPythonTask O SparkSubmitTask O PipelineTask Si notebook_task, indica que este trabajo debe ejecutar un cuaderno. Es posible que este campo no se especifique junto con spark_jar_task.

Si spark_jar_task, indica que este trabajo debe ejecutar un archivo JAR.

Si spark_python_task, indica que este trabajo debe ejecutar un archivo Python.

Si spark_submit_task, indica que el script de envío de Spark debe iniciar este trabajo.

Si pipeline_task, indica que este trabajo debe ejecutar una canalización de Delta Live Tables.

NewCluster

Nombre del campo Tipo Descripción
num_workers O autoscale INT32 O AutoScale Si num_workers, se obtiene el número de nodos de trabajo que debería tener este clúster. Los clústeres tienen un controlador de Spark y num_workers ejecutores para un total de num_workers + 1 nodos de Spark.

Nota: Al leer las propiedades de un clúster, este campo refleja el número deseado de trabajos en lugar del número real actual de trabajos. Por ejemplo, si se cambia el tamaño de un clúster de 5 a 10 trabajos, este campo se actualizará inmediatamente para reflejar el tamaño objetivo de 10 trabajos, mientras que los trabajos que se muestran en spark_info aumentan gradualmente de 5 a 10 con el aprovisionamiento de los nuevos nodos.

Si se usa autoscale, se muestran los parámetros necesarios para escalar y reducir verticalmente los clústeres automáticamente en función de la carga.
spark_version STRING Versión de Spark del clúster. Se puede recuperar una lista de las versiones de Spark disponibles mediante la llamada de API Runtime versions. Este campo es obligatorio.
spark_conf SparkConfPair Objeto que contiene un conjunto de pares de clave-valor de configuración de Spark opcionales especificado por el usuario. También puede pasar una cadena de opciones de JVM adicionales al controlador y a los ejecutores mediante
spark.driver.extraJavaOptions y spark.executor.extraJavaOptions, respectivamente.

Confirmaciones de Spark de ejemplo:
{"spark.speculation": true, "spark.streaming.ui.retainedBatches": 5} o
{"spark.driver.extraJavaOptions": "-verbose:gc -XX:+PrintGCDetails"}
node_type_id STRING Este campo codifica, mediante un solo valor, los recursos disponibles para cada uno de los nodos de Spark de este clúster. Por ejemplo, los nodos de Spark se pueden aprovisionar y optimizar para cargas de trabajo de memoria o proceso intensivo. Se puede recuperar una lista de tipos de nodo disponibles mediante la llamada de API Enumeración de tipos de nodo. Este campo, el campo instance_pool_id o una directiva de clúster que especifica un identificador de tipo de nodo o un identificador de grupo de instancias, es obligatorio.
driver_node_type_id STRING Tipo de nodo del controlador de Spark. Este campo es opcional. Si no se establece, el tipo de nodo del controlador se establecerá con el mismo valor que node_type_id que se definió anteriormente.
custom_tags ClusterTag Objeto que contiene un conjunto de etiquetas para los recursos del clúster. Databricks etiqueta todos los recursos de clúster (como, por ejemplo, las máquinas virtuales) con estas etiquetas además de default_tags.

Nota:

* Las etiquetas no son compatibles con tipos de nodos heredados, como, por ejemplo, los que están optimizados para procesos y optimizados para memoria.
* Databricks permite como máximo 45 etiquetas personalizadas.
cluster_log_conf ClusterLogConf Configuración para entregar registros de Spark a un destino de almacenamiento a largo plazo. Solo se puede especificar un destino para un clúster. Si se da la confirmación, los registros se entregarán al destino cada 5 mins. El destino de los registros de controlador es <destination>/<cluster-id>/driver, mientras que el destino de los registros del ejecutor es <destination>/<cluster-id>/executor.
init_scripts Matriz de InitScriptInfo Configuración para almacenar scripts de inicialización. Se pueden especificar tantos scripts como sea necesario. Los scripts se ejecutan de manera secuencial en el orden proporcionado. Si se especifica cluster_log_conf, los registros de script de init se enviarán a
<destination>/<cluster-id>/init_scripts.
spark_env_vars SparkEnvPair Objeto que contiene un conjunto de pares de clave-valor de variables de entorno opcionales especificadas por el usuario. Los partes de clave-valor del formulario (X,Y) se exportan tal y como están (es decir,
export X='Y') al iniciar el controlador y los trabajos.

Para especificar un conjunto adicional de SPARK_DAEMON_JAVA_OPTS, se recomienda anexarlos a $SPARK_DAEMON_JAVA_OPTS, tal como se muestra en el ejemplo siguiente. Esto garantiza que también se incluyan todas las variables de entorno predeterminadas que administra Databricks.

Variables de entorno de Spark de ejemplo:
{"SPARK_WORKER_MEMORY": "28000m", "SPARK_LOCAL_DIRS": "/local_disk0"} o
{"SPARK_DAEMON_JAVA_OPTS": "$SPARK_DAEMON_JAVA_OPTS -Dspark.shuffle.service.enabled=true"}
enable_elastic_disk BOOL Escalado automático de almacenamiento local: cuando se habilita esta variable, este clúster adquiere espacio en disco adicional de manera dinámica cuando sus trabajos de Spark se quedan sin espacio en disco. Consulte Escalado automático de almacenamiento local para obtener más información.
driver_instance_pool_id STRING Identificador opcional del grupo de instancias que se usará para el nodo de controlador. También debe especificar instance_pool_id. Consulte API Instance Pools 2.0.
instance_pool_id STRING Identificador opcional del grupo de instancias que se usará para los nodos del clúster. Si driver_instance_pool_id está presente,
se usará instance_pool_id solo para los nodos de trabajo. De lo contrario, se usará tanto para el nodo de controlador como para los nodos de trabajo. Consulte API Instance Pools 2.0.

NotebookOutput

Nombre del campo Tipo Descripción
resultado STRING Valor que se pasó a dbutils.notebook.exit(). Azure Databricks restringe esta API para que devuelva los primeros 1 MB del valor. Para obtener un resultado mayor, el trabajo puede almacenar los resultados en un servicio de almacenamiento en la nube. Este campo estará ausente si nunca se llamó a dbutils.notebook.exit().
truncado BOOLEAN Indica si el resultado se ha truncado o no.

NotebookTask

Todas las celdas de salida están sujetas al tamaño de 8 MB. Si la salida de una celda tiene un tamaño mayor, se cancelará el resto de la ejecución y esta se marcará como con errores. En ese caso, es posible que también falte parte de la salida de contenido de otras celdas.

Si necesita ayuda para encontrar la celda que está fuera del límite, ejecute el cuaderno en un clúster de uso general y use esta técnica de autoguardado del cuaderno.

Nombre del campo Tipo Descripción
notebook_path STRING Ruta de acceso absoluta del cuaderno que se va a ejecutar en el área de trabajo de Azure Databricks. Esta ruta de acceso debe comenzar con una barra diagonal. Este campo es obligatorio.
revision_timestamp LONG Marca de tiempo de la revisión del cuaderno.
base_parameters Asignación de ParamPair Parámetros base que se usarán para cada ejecución de este trabajo. Si la ejecución se inicia mediante una llamada a run-now con los parámetros especificados, se combinarán los dos mapas de parámetros. Si se especifica la misma clave en base_parameters y en run-now, se usará el valor de run-now.

Use variables de parámetros de tarea para establecer parámetros que contengan información sobre las ejecuciones de trabajos.

Si el cuaderno toma un parámetro que no se ha especificado en los parámetros de reemplazo base_parameters o run-now del trabajo, se usará el valor predeterminado del cuaderno.

Recupere estos parámetros en un cuaderno mediante dbutils.widgets.get.

ParamPair

Parámetros basados en nombres para trabajos que ejecutan tareas de cuaderno.

Importante

Los campos de esta estructura de datos solo aceptan caracteres latinos (juego de caracteres ASCII). El uso de caracteres que no sean ASCII devolverá un error. Algunos ejemplos de caracteres no válidos y que no son ASCII son los caracteres chinos, los kanjis japoneses y los emojis.

Tipo Descripción
STRING Nombre del parámetro. Pase a dbutils.widgets.get para recuperar el valor.
STRING Valor del parámetro.

PipelineTask

Nombre del campo Tipo Descripción
pipeline_id STRING Nombre completo de la tarea de la canalización de Delta Live Tables que se va a ejecutar.

Run

Toda la información sobre una ejecución excepto su salida. La salida se puede recuperar por separado con el método getRunOutput.

Nombre del campo Tipo Descripción
job_id INT64 Identificador canónico del trabajo que contiene esta ejecución.
run_id INT64 Identificador canónico de la ejecución. Este identificador es único en todas las ejecuciones de todos los trabajos.
creator_user_name STRING Nombre de usuario del creador. Este campo no se incluirá en la respuesta si ya se ha eliminado el usuario.
number_in_job INT64 Número de secuencia de esta ejecución entre todas las ejecuciones del trabajo. Este valor comienza en 1.
original_attempt_run_id INT64 Si esta ejecución es un reintento de un intento de ejecución anterior, este campo contendrá el run_id del intento original; de lo contrario, será igual que el run_id.
state RunState Estados del resultado y el ciclo de vida de la ejecución.
schedule CronSchedule Programación cron que desencadenó esta ejecución si la desencadenó el programador periódico.
task JobTask Tarea realizada que realizó la ejecución, si realizó alguna.
cluster_spec ClusterSpec Instantánea de la especificación del clúster del trabajo cuando se creó esta ejecución.
cluster_instance ClusterInstance Clúster que se usó para esta ejecución. Si se especifica que la ejecución use un nuevo clúster, este campo se establecerá una vez que el servicio Jobs haya solicitado un clúster para la ejecución.
overriding_parameters RunParameters Parámetros usados para esta ejecución.
start_time INT64 Hora a la que se inició esta ejecución en milisegundos (milisegundos desde el 1/1/1970 UTC). Puede que esta no sea la hora en que se inicia la ejecución de la tarea de trabajo; por ejemplo, si el trabajo está programado para ejecutarse en un nuevo clúster, esta sería la hora en que se emite la llamada de creación del clúster.
setup_duration INT64 Tiempo que se tardó en configurar el clúster en milisegundos. En el caso de ejecuciones que se ejecutan en clústeres nuevos, este es el tiempo de creación del clúster; para las ejecuciones que se ejecutan en clústeres existentes, el tiempo será muy corto.
execution_duration INT64 Tiempo en milisegundos que se tardó en ejecutar los comandos en el archivo JAR o en el cuaderno hasta que se completaron, hasta que se produjo un error, hasta que se agotó el tiempo de espera, hasta que se cancelaron o hasta que se produjo un error inesperado.
cleanup_duration INT64 Tiempo en milisegundos que se tardó en finalizar el clúster y limpiar los artefactos asociados. La duración total de la ejecución es la suma de setup_duration, execution_duration y cleanup_duration.
end_time INT64 Hora a la que finalizó esta ejecución en milisegundos (milisegundos desde el 1/1/1970 UTC). Este campo se establecerá en 0 si el trabajo sigue en ejecución.
desencadenador TriggerType Tipo de desencadenador que desencadenó esta ejecución.
run_name STRING Nombre opcional de la ejecución. El valor predeterminado es Untitled. La longitud máxima permitida es de 4096 bytes en codificación UTF-8.
run_page_url STRING Dirección URL de la página de detalles de la ejecución.
run_type STRING Tipo de la ejecución.

* JOB_RUN: ejecución de trabajo normal. Ejecución que se creó con Ejecutar ahora.
* WORKFLOW_RUN: ejecución de flujo de trabajo. Ejecución que se creó con dbutils.notebook.run.
* SUBMIT_RUN: ejecución enviada. Ejecución que se creó con Ejecutar ahora.
attempt_number INT32 Número de secuencia de este intento de ejecución para una ejecución de trabajo desencadenada. El intento inicial de ejecución tiene un attempt_number de 0. Si se produce un error en el intento de ejecución inicial y el trabajo tiene una directiva de reintentos (max_retries> 0), las ejecuciones posteriores se crearán con un original_attempt_run_id del identificador del intento original y un incremento de attempt_number. Las ejecuciones solo se reintenta hasta que se ejecutan correctamente y el attempt_number máximo sea igual al valor max_retries del trabajo.

RunLifeCycleState

Estado del ciclo de vida de una ejecución. Las transiciones de estado permitidas son las siguientes:

  • PENDING ->RUNNING ->TERMINATING ->TERMINATED
  • PENDING ->SKIPPED
  • PENDING ->INTERNAL_ERROR
  • RUNNING ->INTERNAL_ERROR
  • TERMINATING ->INTERNAL_ERROR
State Descripción
PENDING La ejecución se ha desencadenado. Si aún no hay ninguna ejecución activa del mismo trabajo, quiere decir que el clúster y el contexto de ejecución están en preparación. Si ya hay una ejecución activa del mismo trabajo, la ejecución pasará inmediatamente al estado SKIPPED sin preparar ningún recurso.
RUNNING La tarea de esta ejecución está en ejecución.
TERMINATING La tarea de esta ejecución se completó y se están limpiando el clúster y el contexto de ejecución.
TERMINATED La tarea de esta ejecución se completó y se limpiaron el clúster y el contexto de ejecución. Este estado es terminal.
SKIPPED Esta ejecución se anuló porque ya había una ejecución anterior del mismo activa. Este estado es terminal.
INTERNAL_ERROR Estado excepcional que indica un error en el servicio Jobs, como, por ejemplo, un error de red durante un largo período. Si una ejecución de un nuevo clúster finaliza con el estado INTERNAL_ERROR, el servicio Jobs cerrará el clúster lo antes posible. Este estado es terminal.

RunParameters

Parámetros para esta ejecución. Solo se debe especificar un jar_params, python_params o notebook_params en la solicitud run-now, en función del tipo de tarea de trabajo. Los trabajos con la tarea JAR de Spark o la tarea de Python toman una lista de parámetros basados en la posición y los trabajos con tareas de cuaderno toman una asignación de valores clave.

Nombre del campo Tipo Descripción
jar_params Matriz de objetos STRING. Lista de parámetros para trabajos con tareas JAR de Spark, por ejemplo, "jar_params": ["john doe", "35"]. Los parámetros se usarán para invocar la función main de la clase principal especificada en la tarea JAR de Spark. Si no se especifica en run-now, el valor predeterminado será una lista vacía. jar_params no se puede especificar junto con notebook_params. La representación JSON de este campo (es decir, {"jar_params":["john doe","35"]}) no puede superar los 10 000 bytes.

Use variables de parámetros de tarea para establecer parámetros que contengan información sobre las ejecuciones de trabajos.
notebook_params Asignación de ParamPair Asignación de claves a valores para trabajos con tarea de cuaderno, como, por ejemplo,
"notebook_params": {"name": "john doe", "age": "35"}. La asignación se pasa al cuaderno y está disponible a través de la función dbutils.widgets.get.

Si no se especifica en run-now, la ejecución desencadenada usa los parámetros base del trabajo.

notebook_params no se puede especificar junto con jar_params.

Use variables de parámetros de tarea para establecer parámetros que contengan información sobre las ejecuciones de trabajos.

La representación JSON de este campo (es decir,
{"notebook_params":{"name":"john doe","age":"35"}}) no puede superar los 10 000 bytes.
python_params Matriz de objetos STRING. Lista de parámetros para trabajos con tareas Python, por ejemplo, "python_params": ["john doe", "35"]. Los parámetros se pasan al archivo de Python como parámetros de línea de comandos. Si se especificara en run-now, se sobrescribirían los parámetros especificados en la configuración del trabajo. La representación JSON de este campo (es decir, {"python_params":["john doe","35"]}) no puede superar los 10 000 bytes.

Use variables de parámetros de tarea para establecer parámetros que contengan información sobre las ejecuciones de trabajos.

> [! IMPORTANTE] >> Estos parámetros solo aceptan caracteres latinos (juego de caracteres ASCII). > El uso de caracteres que no sean ASCII devolverá un error. Algunos ejemplos de caracteres no válidos y que no son ASCII > son los caracteres chinos, los kanjis japoneses y los emojis.
spark_submit_params Matriz de objetos STRING. Lista de parámetros para los trabajos con la tarea de envío de Spark, como, por ejemplo,
"spark_submit_params": ["--class", "org.apache.spark.examples.SparkPi"]. Los parámetros se pasan al script spark-submit como parámetros de línea de comandos. Si se especificara en run-now, se sobrescribirían los parámetros especificados en la configuración del trabajo. La representación JSON de este campo (es decir, {"python_params":["john doe","35"]}) no puede superar los 10 000 bytes.

Use variables de parámetros de tarea para establecer parámetros que contengan información sobre las ejecuciones de trabajos.

> [! IMPORTANTE] >> Estos parámetros solo aceptan caracteres latinos (juego de caracteres ASCII). > El uso de caracteres que no sean ASCII devolverá un error. Algunos ejemplos de caracteres no válidos y que no son ASCII > son los caracteres chinos, los kanjis japoneses y los emojis.

RunResultState

Estado de resultado de la ejecución.

  • Si life_cycle_state = TERMINATED: si la ejecución tenía una tarea, se garantiza que el resultado estará disponible e indica el resultado de la tarea.
  • Si life_cycle_state = PENDING, RUNNING o SKIPPED, el estado del resultado no está disponible.
  • Si life_cycle_state = TERMINATING o lifecyclestate = INTERNAL_ERROR: el estado de resultado está disponible si la ejecución tenía una tarea y se administró para iniciarla.

Una vez que está disponible, el estado del resultado nunca cambia.

State Descripción
CORRECTA La tarea se completó correctamente.
FAILED La tarea finalizó con errores.
TIMEDOUT La ejecución se detuvo después de agotar el tiempo de espera.
CANCELED La ejecución se canceló a petición del usuario.

RunState

Nombre del campo Tipo Descripción
life_cycle_state RunLifeCycleState Descripción de la ubicación actual de una ejecución en el ciclo de vida de la ejecución. Este campo siempre está disponible en la respuesta.
result_state RunResultState Estado de resultado de la ejecución. Si no está disponible, la respuesta no incluirá este campo. Consulte RunResultState para obtener más información sobre la disponibilidad de result_state.
user_cancelled_or_timedout BOOLEAN Indica si un usuario o el programador cancelaron manualmente una ejecución porque se produjo un tiempo de espera.
state_message STRING Mensaje descriptivo del estado actual. Este campo no está estructurado y su formato exacto está sujeto a cambios.

SparkJarTask

Nombre del campo Tipo Descripción
jar_uri STRING En desuso desde abril de 2016. En su lugar, proporcione un archivo jar a través del campo libraries. Para obtener un ejemplo, consulte Create.
main_class_name STRING Nombre completo de la clase que incluye el método principal que se va a ejecutar. Esta clase debe estar contenida en un archivo JAR que se proporciona como una biblioteca.

El código debe usar SparkContext.getOrCreate para obtener un contexto de Spark; de lo contrario, se producirá un error en las ejecuciones del trabajo.
parámetros Matriz de objetos STRING. Parámetros que se pasaron al método principal.

Use variables de parámetros de tarea para establecer parámetros que contengan información sobre las ejecuciones de trabajos.

SparkPythonTask

Nombre del campo Tipo Descripción
python_file STRING El URI del archivo Python que se va a ejecutar. Se admiten rutas de acceso de DBFS. Este campo es obligatorio.
parámetros Matriz de objetos STRING. Parámetros de la línea de comandos que se pasaron al archivo Python.

Use variables de parámetros de tarea para establecer parámetros que contengan información sobre las ejecuciones de trabajos.

SparkSubmitTask

Importante

  • Solo se pueden invocar las tareas de envío de Spark en clústeres nuevos.
  • En la especificación new_cluster, libraries y spark_conf no se admiten. En su lugar, use --jars y --py-files para agregar bibliotecas de Java y Python, y --conf para establecer la configuración de Spark.
  • Azure Databricks configura automáticamente master, deploy-mode y executor-cores; estos valores no se pueden especificar en parámetros.
  • De forma predeterminada, el trabajo de envío de Spark usa toda la memoria disponible (excepto la memoria reservada para los servicios de Azure Databricks). Puede establecer --driver-memory y --executor-memory con un valor más bajo para dejar espacio para el uso fuera del montón.
  • Los argumentos --jars, --py-files y --files admiten rutas de acceso de DBFS.

Por ejemplo, suponiendo que el archivo JAR se cargue en DBFS, puede establecer los parámetros siguientes para ejecutar SparkPi.

{
  "parameters": [
    "--class",
    "org.apache.spark.examples.SparkPi",
    "dbfs:/path/to/examples.jar",
    "10"
  ]
}
Nombre del campo Tipo Descripción
parámetros Matriz de objetos STRING. Parámetros de línea de comandos que se pasan al envío de Spark.

Use variables de parámetros de tarea para establecer parámetros que contengan información sobre las ejecuciones de trabajos.

TriggerType

A continuación se describen los desencadenadores que pueden desencadenar una ejecución.

Tipo Descripción
PERIODIC Programaciones que desencadenan periódicamente ejecuciones, como, por ejemplo, un programador cron.
ONE_TIME Desencadenadores puntuales que desencadenan una sola ejecución. Esto ocurre cuando se desencadena una única ejecución a petición a través de la interfaz de usuario o la API.
REINTENTAR Indica una ejecución que se desencadena como un reintento de una ejecución que produjo errores previamente. Esto sucede cuando se solicita volver a ejecutar el trabajo en caso de error.

ViewItem

El contenido exportado está en formato HTML. Por ejemplo, si la vista que se va a exportar es de paneles, se devuelve una cadena HTML para cada panel.

Nombre del campo Tipo Descripción
contenido STRING Contenido de la vista.
name STRING Nombre del elemento de vista. En el caso de la vista de código, se trata del nombre del cuaderno. En el caso de la vista de panel, se trata del nombre del panel.
tipo ViewType Tipo del elemento de vista.

ViewType

Tipo Descripción
NOTEBOOK Elemento de vista de cuaderno.
PANEL Elemento de vista de panel.

ViewsToExport

Vista que se va a exportar: puede ser código, todos los paneles o todo.

Tipo Descripción
CODE Vista de código del cuaderno.
PANELES Todas las vistas de panel del cuaderno.
ALL Todas las vistas del cuaderno.

WebHook

Nombre del campo Tipo Descripción
id STRING Identificador que hace referencia a un destino de notificación del sistema. Este campo es obligatorio.

WebhookNotifications

Nombre del campo Tipo Descripción
on_start Matriz de Webhook Lista de destinos del sistema a los que se notificará cuando comience una ejecución. Si no se especifica en la creación, el restablecimiento o la actualización del trabajo, la lista estará vacía y no se enviarán notificaciones.
on_success Matriz de Webhook Lista de destinos del sistema a los que se notificará cuando una ejecución se complete correctamente. Se considera que una ejecución se ha completado correctamente si termina con el estado TERMINATEDlife_cycle_state y SUCCESSFUL result_state. Si no se especifica en la creación, el restablecimiento o la actualización del trabajo, la lista estará vacía y no se enviarán notificaciones.
on_failure Matriz de Webhook Lista de destinos del sistema que se van a notificar cuando una ejecución se completa sin éxito. Se considera que una ejecución no se ha completado incorrectamente si termina con el estado INTERNAL_ERROR
life_cycle_state o el estado SKIPPED, FAILED, o TIMED_OUT result_state. Si esto no se especifica en la creación, el restablecimiento o la actualización del trabajo, la lista estará vacía y no se enviarán las notificaciones.