Guía de Delta Live Tables API

Importante

El contenido de este artículo se ha retirado y es posible que no se actualice. Consulte Delta Live Tables en la referencia de la API REST de Databricks.

La API de Delta Live Tables permite crear, editar, eliminar, iniciar y examinar canalizaciones.

Importante

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

Creación de una canalización

Punto de conexión Método HTTP
2.0/pipelines POST

Crea una canalización de Delta Live Tables.

Ejemplo

En este ejemplo se crea una canalización desencadenada.

Solicitud

curl --netrc -X POST \
https://<databricks-instance>/api/2.0/pipelines \
--data @pipeline-settings.json

pipeline-settings.json:

{
  "name": "Wikipedia pipeline (SQL)",
  "storage": "/Users/username/data",
  "clusters": [
    {
      "label": "default",
      "autoscale": {
        "min_workers": 1,
        "max_workers": 5,
        "mode": "ENHANCED"
      }
    }
  ],
  "libraries": [
    {
      "notebook": {
        "path": "/Users/username/DLT Notebooks/Delta Live Tables quickstart (SQL)"
      }
    }
  ],
  "continuous": false
}

Sustituya:

En este ejemplo, se usa un archivo .netrc.

Response

{
  "pipeline_id": "a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5"
}

Estructura de la solicitud

Consulte PipelineSettings.

Estructura de la respuesta

Nombre del campo Tipo Descripción
pipeline_id STRING Identificador único de la canalización recién creada.

Edición de una canalización

Punto de conexión Método HTTP
2.0/pipelines/{pipeline_id} PUT

Actualiza la configuración de una canalización existente.

Ejemplo

En este ejemplo se agrega un parámetro target a la canalización con el identificador a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5:

Solicitud

curl --netrc -X PUT \
https://<databricks-instance>/api/2.0/pipelines/a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5 \
--data @pipeline-settings.json

pipeline-settings.json

{
  "id": "a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5",
  "name": "Wikipedia pipeline (SQL)",
  "storage": "/Users/username/data",
  "clusters": [
    {
      "label": "default",
      "autoscale": {
        "min_workers": 1,
        "max_workers": 5,
        "mode": "ENHANCED"
      }
    }
  ],
  "libraries": [
    {
      "notebook": {
        "path": "/Users/username/DLT Notebooks/Delta Live Tables quickstart (SQL)"
      }
    }
  ],
  "target": "wikipedia_quickstart_data",
  "continuous": false
}

Sustituya:

En este ejemplo, se usa un archivo .netrc.

Estructura de la solicitud

Consulte PipelineSettings.

Eliminación de una canalización

Punto de conexión Método HTTP
2.0/pipelines/{pipeline_id} DELETE

Elimina una canalización del sistema Delta Live Tables.

Ejemplo

En este ejemplo se elimina la canalización con el identificador a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5:

Solicitud

curl --netrc -X DELETE \
https://<databricks-instance>/api/2.0/pipelines/a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5

Sustituya:

En este ejemplo, se usa un archivo .netrc.

Inicio de la actualización de una canalización

Punto de conexión Método HTTP
2.0/pipelines/{pipeline_id}/updates POST

Inicia una actualización de una canalización. Puede iniciar una actualización para todo el gráfico de canalización o una actualización selectiva de tablas específicas.

Ejemplos

Iniciar una actualización completa

En este ejemplo se inicia una actualización con modificación completa para la canalización con el identificador a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5:

Solicitud
curl --netrc -X POST \
https://<databricks-instance>/api/2.0/pipelines/a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5/updates \
--data '{ "full_refresh": "true" }'

Sustituya:

En este ejemplo, se usa un archivo .netrc.

Response
{
  "update_id": "a1b23c4d-5e6f-78gh-91i2-3j4k5lm67no8",
  "request_id": "a1b23c4d-5e6f-78gh-91i2-3j4k5lm67no8"
}

Iniciar una actualización de las tablas seleccionadas

Este ejemplo inicia una actualización que actualiza las tablas sales_orders_cleaned y sales_order_in_chicago en la canalizacióncon ID a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5:

Solicitud
curl --netrc -X POST \
https://<databricks-instance>/api/2.0/pipelines/a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5/updates \
--data '{ "refresh_selection": ["sales_orders_cleaned", "sales_order_in_chicago"] }'

Sustituya:

En este ejemplo, se usa un archivo .netrc.

Response
{
  "update_id": "a1b23c4d-5e6f-78gh-91i2-3j4k5lm67no8",
  "request_id": "a1b23c4d-5e6f-78gh-91i2-3j4k5lm67no8"
}

Iniciar una actualización completa de las tablas seleccionadas

Este ejemplo inicia una actualización de las tablas sales_orders_cleaned y sales_order_in_chicago, y una actualización con una actualización completa de las tablas customers y sales_orders_raw en la canalización con ID a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5.

Solicitud
curl --netrc -X POST \
https://<databricks-instance>/api/2.0/pipelines/a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5/updates \
--data '{ "refresh_selection": ["sales_orders_cleaned", "sales_order_in_chicago"], "full_refresh_selection": ["customers", "sales_orders_raw"] }'

Sustituya:

En este ejemplo, se usa un archivo .netrc.

Response
{
  "update_id": "a1b23c4d-5e6f-78gh-91i2-3j4k5lm67no8",
  "request_id": "a1b23c4d-5e6f-78gh-91i2-3j4k5lm67no8"
}

Estructura de la solicitud

Nombre del campo Tipo Descripción
full_refresh BOOLEAN Si se van a volver a procesar todos los datos. Si es true, el sistema Delta Live Tables restablece todas las tablas que se pueden restablecer antes de ejecutar la canalización.

Este campo es opcional.

El valor predeterminado es false.

Se devuelve un error si full_refesh es true y refresh_selection o full_refresh_selection están establecidos.
refresh_selection Matriz de objetos STRING. Lista de tablas que se van a actualizar. Uso
refresh_selection para iniciar una actualización de un conjunto seleccionado de tablas en el gráfico de canalización.

Este campo es opcional. Si ambos
refresh_selection y
full_refresh_selection están vacíos, se actualiza todo el gráfico de canalización.

Se devuelve un error.

* full_refesh es verdadero y
refresh_selection está configurado.
* Una o varias de las tablas especificadas no existen en el gráfico de canalización.
full_refresh_selection Matriz de objetos STRING. Lista de tablas que se van a actualizar con actualización completa. Use full_refresh_selection para iniciar una actualización de un conjunto seleccionado de tablas. Los estados de las tablas especificadas se restablecen antes de que el sistema Delta Live Tables inicie la actualización.

Este campo es opcional. Si ambos
refresh_selection y
full_refresh_selection están vacíos, se actualiza todo el gráfico de canalización.

Se devuelve un error.

* full_refesh es verdadero y
refresh_selection está configurado.
* Una o varias de las tablas especificadas no existen en el gráfico de canalización.
* Una o varias de las tablas especificadas no se pueden restablecer.

Estructura de la respuesta

Nombre del campo Tipo Descripción
update_id STRING Identificador único de la actualización recién creada.
request_id STRING Identificador único de la solicitud que inició la actualización.

Obtención del estado de una solicitud de actualización de la canalización

Punto de conexión Método HTTP
2.0/pipelines/{pipeline_id}/requests/{request_id} GET

Obtiene el estado y la información de la actualización de canalización asociada a request_id, donde request_id es un identificador único de la solicitud que inicia la actualización de canalización. Si se reintenta o reinicia la actualización, la nueva actualización hereda el valor de request_id,

Ejemplo

Para la canalización con el identificador a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5, en este ejemplo se devuelve el estado y la información de la actualización asociada al identificador de solicitud a83d9f7c-d798-4fd5-aa39-301b6e6f4429:

Solicitud

curl --netrc -X GET \
https://<databricks-instance>/api/2.0/pipelines/a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5/requests/a83d9f7c-d798-4fd5-aa39-301b6e6f4429

Sustituya:

En este ejemplo, se usa un archivo .netrc.

Response

{
   "status": "TERMINATED",
   "latest_update":{
     "pipeline_id": "a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5",
     "update_id": "90da8183-89de-4715-b5a9-c243e67f0093",
     "config":{
       "id": "aae89b88-e97e-40c4-8e1a-1b7ac76657e8",
       "name": "Retail sales (SQL)",
       "storage": "/Users/username/data",
       "configuration":{
         "pipelines.numStreamRetryAttempts": "5"
       },
       "clusters":[
         {
           "label": "default",
           "autoscale":{
             "min_workers": 1,
             "max_workers": 5,
             "mode": "ENHANCED"
           }
         }
       ],
       "libraries":[
         {
           "notebook":{
             "path": "/Users/username/DLT Notebooks/Delta Live Tables quickstart (SQL)"
           }
         }
       ],
       "continuous": false,
       "development": true,
       "photon": true,
       "edition": "advanced",
       "channel": "CURRENT"
     },
     "cause": "API_CALL",
     "state": "COMPLETED",
     "cluster_id": "1234-567891-abcde123",
     "creation_time": 1664304117145,
     "full_refresh": false,
     "request_id": "a83d9f7c-d798-4fd5-aa39-301b6e6f4429"
   }
}

Estructura de la respuesta

Nombre del campo Tipo Descripción
status STRING Estado de la solicitud de actualización de la canalización. Uno de

* ACTIVE: se está ejecutando activamente una actualización para esta solicitud, o bien podría reintentarse en una nueva actualización.
* TERMINATED: la solicitud ha finalizado y no se reintentará ni se reiniciará.
pipeline_id STRING Identificador único de la canalización.
update_id STRING Identificador único de la actualización.
config PipelineSettings Configuración de la canalización.
cause STRING Desencadenador de la actualización. Uno de estos valores: API_CALL,
RETRY_ON_FAILURE, SERVICE_UPGRADE, SCHEMA_CHANGE,
JOB_TASK o USER_ACTION.
state STRING Estado de la actualización. Uno de estos valores: QUEUED, CREATED,
WAITING_FOR_RESOURCES, INITIALIZING, RESETTING,
SETTING_UP_TABLES, RUNNING, STOPPING, COMPLETED,
FAILED o CANCELED.
cluster_id STRING Identificador del clúster que ejecuta la actualización.
creation_time INT64 Marca de tiempo en la que se creó la actualización.
full_refresh BOOLEAN Indica si esta actualización restablece todas las tablas antes de ejecutarse.
refresh_selection Matriz de objetos STRING. Lista de tablas que se van a actualizar sin una actualización completa.
full_refresh_selection Matriz de objetos STRING. Lista de tablas que se van a actualizar con actualización completa.
request_id STRING Identificador único de la solicitud que inició la actualización. Este es el valor devuelto por la solicitud de actualización. Si se reintenta o reinicia la actualización, la nueva actualización hereda el valor de request_id, pero el valor de update_id será diferente.

Interrupción de cualquier actualización de canalización activa

Punto de conexión Método HTTP
2.0/pipelines/{pipeline_id}/stop POST

Detiene cualquier actualización de canalización activa. Si no se está ejecutando ninguna actualización, esta solicitud no funciona.

En el caso de una canalización continua, la ejecución de la canalización se pausa. Las tablas que se están procesando actualmente finalizan la actualización, pero las tablas descendentes no se actualizan. En la siguiente actualización de canalización, Delta Live Tables realiza una actualización seleccionada de las tablas que no completaron el procesamiento y reanuda el procesamiento del DAG de canalización restante.

En el caso de una canalización desencadenada, se detiene la ejecución de la canalización. Las tablas que se están procesando actualmente finalizan la actualización, pero las tablas descendentes no se actualizan. En la siguiente actualización de canalización, Delta Live Tables actualiza todas las tablas.

Ejemplo

En este ejemplo se detiene una actualización de la canalización con el identificador a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5:

Solicitud

curl --netrc -X POST \
https://<databricks-instance>/api/2.0/pipelines/a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5/stop

Sustituya:

En este ejemplo, se usa un archivo .netrc.

Enumeración de eventos de canalización

Punto de conexión Método HTTP
2.0/pipelines/{pipeline_id}/events GET

Recupera eventos de una canalización.

Ejemplo

En este ejemplo se recupera un máximo de cinco eventos para la canalización con el identificador a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5.

Solicitud

curl --netrc -X GET \
https://<databricks-instance>/api/2.0/pipelines/a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5/events?max_results=5

Sustituya:

En este ejemplo, se usa un archivo .netrc.

Estructura de la solicitud

Nombre del campo Tipo Descripción
page_token STRING Token de página devuelto por la llamada anterior. Este campo es mutuamente excluyente con todos los campos de esta solicitud, excepto max_results. Se devuelve un error si se usan campos que no sean max_results al establecer este campo.

Este campo es opcional.
max_results INT32 Número máximo de entradas que se devolverán en una sola página. El sistema puede devolver menos de max_results eventos en una respuesta, incluso si hay más eventos disponibles.

Este campo es opcional.

El valor predeterminado es 25.

El valor máximo es 100. Se devuelve un error si el valor de
max_results es mayor que 100.
order_by STRING Cadena que indica un criterio de ordenación por marca de tiempo para los resultados; por ejemplo, ["timestamp asc"].

El criterio de ordenación puede ser ascendente o descendente. De manera predeterminada, los eventos se devuelven en orden descendente por marca de tiempo.

Este campo es opcional.
filter STRING Criterios para seleccionar un subconjunto de resultados, expresados mediante una sintaxis SQL similar a la siguiente. Los filtros admitidos son los siguientes:

* level='INFO' (o WARN o ERROR)
* level in ('INFO', 'WARN')
* id='[event-id]'
* timestamp > 'TIMESTAMP' (o >=,<,<=,=)

Se admiten expresiones compuestas; por ejemplo:
level in ('ERROR', 'WARN') AND timestamp> '2021-07-22T06:37:33.083Z'

Este campo es opcional.

Estructura de la respuesta

Nombre del campo Tipo Descripción
events Matriz de eventos de canalización. Lista de eventos que coinciden con los criterios de la solicitud.
next_page_token STRING Si está presente, un token para capturar la siguiente página de eventos.
prev_page_token STRING Si está presente, un token para capturar la página anterior de eventos.

Obtención de detalles de canalización

Punto de conexión Método HTTP
2.0/pipelines/{pipeline_id} GET

Obtiene detalles sobre una canalización, incluida la configuración y las actualizaciones recientes.

Ejemplo

En este ejemplo se obtienen detalles de la canalización con el identificador a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5:

Solicitud

curl --netrc -X GET \
https://<databricks-instance>/api/2.0/pipelines/a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5

Sustituya:

En este ejemplo, se usa un archivo .netrc.

Response

{
  "pipeline_id": "a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5",
  "spec": {
    "id": "a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5",
    "name": "Wikipedia pipeline (SQL)",
    "storage": "/Users/username/data",
    "clusters": [
      {
        "label": "default",
        "autoscale": {
          "min_workers": 1,
          "max_workers": 5,
          "mode": "ENHANCED"
        }
      }
    ],
    "libraries": [
      {
        "notebook": {
          "path": "/Users/username/DLT Notebooks/Delta Live Tables quickstart (SQL)"
        }
      }
    ],
    "target": "wikipedia_quickstart_data",
    "continuous": false
  },
  "state": "IDLE",
  "cluster_id": "1234-567891-abcde123",
  "name": "Wikipedia pipeline (SQL)",
  "creator_user_name": "username",
  "latest_updates": [
    {
      "update_id": "8a0b6d02-fbd0-11eb-9a03-0242ac130003",
      "state": "COMPLETED",
      "creation_time": "2021-08-13T00:37:30.279Z"
    },
    {
      "update_id": "a72c08ba-fbd0-11eb-9a03-0242ac130003",
      "state": "CANCELED",
      "creation_time": "2021-08-13T00:35:51.902Z"
    },
    {
      "update_id": "ac37d924-fbd0-11eb-9a03-0242ac130003",
      "state": "FAILED",
      "creation_time": "2021-08-13T00:33:38.565Z"
    }
  ],
  "run_as_user_name": "username"
}

Estructura de la respuesta

Nombre del campo Tipo Descripción
pipeline_id STRING Identificador único de la canalización.
spec PipelineSettings Configuración de la canalización.
state STRING Estado de la canalización. Uno de estos valores: IDLE o RUNNING.

Si el estado es igual a RUNNING, hay al menos una actualización activa.
cluster_id STRING Identificador del clúster que ejecuta la canalización.
name STRING Nombre descriptivo de esta canalización.
creator_user_name STRING Nombre de usuario del creador de la canalización.
latest_updates Matriz de UpdateStateInfo. Estado de las actualizaciones más recientes de la canalización, ordenadas con la actualización más reciente en primer lugar.
run_as_user_name STRING Nombre de usuario con el que se ejecuta la canalización.

Obtención de detalles de actualización

Punto de conexión Método HTTP
2.0/pipelines/{pipeline_id}/updates/{update_id} GET

Obtiene los detalles de actualización de una canalización.

Ejemplo

En este ejemplo se obtienen detalles de la actualización 9a84f906-fc51-11eb-9a03-0242ac130003 de la canalización con el identificador a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5:

Solicitud

curl --netrc -X GET \
https://<databricks-instance>/api/2.0/pipelines/a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5/updates/9a84f906-fc51-11eb-9a03-0242ac130003

Sustituya:

En este ejemplo, se usa un archivo .netrc.

Response

{
  "update": {
    "pipeline_id": "a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5",
    "update_id": "9a84f906-fc51-11eb-9a03-0242ac130003",
    "config": {
      "id": "a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5",
      "name": "Wikipedia pipeline (SQL)",
      "storage": "/Users/username/data",
      "configuration": {
        "pipelines.numStreamRetryAttempts": "5"
      },
      "clusters": [
        {
          "label": "default",
          "autoscale": {
            "min_workers": 1,
            "max_workers": 5,
            "mode": "ENHANCED"
          }
        }
      ],
      "libraries": [
        {
          "notebook": {
            "path": "/Users/username/DLT Notebooks/Delta Live Tables quickstart (SQL)"
          }
        }
      ],
      "target": "wikipedia_quickstart_data",
      "continuous": false,
      "development": false
    },
    "cause": "API_CALL",
    "state": "COMPLETED",
    "creation_time": 1628815050279,
    "full_refresh": true,
    "request_id": "a83d9f7c-d798-4fd5-aa39-301b6e6f4429"
  }
}

Estructura de la respuesta

Nombre del campo Tipo Descripción
pipeline_id STRING Identificador único de la canalización.
update_id STRING Identificador único de esta actualización.
config PipelineSettings Configuración de la canalización.
cause STRING Desencadenador de la actualización. Uno de estos valores: API_CALL,
RETRY_ON_FAILURE, SERVICE_UPGRADE.
state STRING Estado de la actualización. Uno de estos valores: QUEUED, CREATED,
WAITING_FOR_RESOURCES, INITIALIZING, RESETTING,
SETTING_UP_TABLES, RUNNING, STOPPING, COMPLETED,
FAILED o CANCELED.
cluster_id STRING Identificador del clúster que ejecuta la canalización.
creation_time INT64 Marca de tiempo en la que se creó la actualización.
full_refresh BOOLEAN Si se trata de una actualización completa. Si es true, se han restablecido todas las tablas de canalización antes de ejecutar la actualización.

Enumerar canalizaciones

Punto de conexión Método HTTP
2.0/pipelines/ GET

Enumera las canalizaciones definidas en el sistema Delta Live Tables.

Ejemplo

En este ejemplo se recuperan los detalles de las canalizaciones en las que el nombre contiene quickstart:

Solicitud

curl --netrc -X GET \
https://<databricks-instance>/api/2.0/pipelines?filter=name%20LIKE%20%27%25quickstart%25%27

Sustituya:

En este ejemplo, se usa un archivo .netrc.

Response

{
  "statuses": [
    {
      "pipeline_id": "e0f01758-fc61-11eb-9a03-0242ac130003",
      "state": "IDLE",
      "name": "DLT quickstart (Python)",
      "latest_updates": [
        {
          "update_id": "ee9ae73e-fc61-11eb-9a03-0242ac130003",
          "state": "COMPLETED",
          "creation_time": "2021-08-13T00:34:21.871Z"
        }
      ],
      "creator_user_name": "username"
    },
    {
      "pipeline_id": "f4c82f5e-fc61-11eb-9a03-0242ac130003",
      "state": "IDLE",
      "name": "My DLT quickstart example",
      "creator_user_name": "username"
    }
  ],
  "next_page_token": "eyJ...==",
  "prev_page_token": "eyJ..x9"
}

Estructura de la solicitud

Nombre del campo Tipo Descripción
page_token STRING Token de página devuelto por la llamada anterior.

Este campo es opcional.
max_results INT32 Número máximo de entradas que se devolverán en una sola página. El sistema puede devolver menos de max_results eventos en una respuesta, incluso si hay más eventos disponibles.

Este campo es opcional.

El valor predeterminado es 25.

El valor máximo es 100. Se devuelve un error si el valor de
max_results es mayor que 100.
order_by Matriz de objetos STRING. Lista de cadenas en la que se especifica el orden de los resultados; por ejemplo,
["name asc"]. Los campos order_by admitidos son id y
name. El valor predeterminado es id asc.

Este campo es opcional.
filter STRING Seleccione un subconjunto de resultados en función de los criterios especificados.

Los filtros admitidos son los siguientes:

"notebook='<path>'" para seleccionar canalizaciones que hacen referencia a la ruta de acceso de cuaderno proporcionada.

name LIKE '[pattern]' para seleccionar canalizaciones con un nombre que coincida con pattern. Se admiten caracteres comodín; por ejemplo:
name LIKE '%shopping%'

No se admiten filtros compuestos.

Este campo es opcional.

Estructura de la respuesta

Nombre del campo Tipo Descripción
statuses Matriz de PipelineStateInfo. Lista de eventos que coinciden con los criterios de la solicitud.
next_page_token STRING Si está presente, un token para capturar la siguiente página de eventos.
prev_page_token STRING Si está presente, un token para capturar la página anterior de eventos.

Estructuras de datos

En esta sección:

ABFSSStorageInfo

Azure Data Lake Storage información de almacenamiento (ADLS).

Nombre del campo Tipo Descripción
destination STRING Destino del archivo. Ejemplo: abfss://...

ClusterLogConf

Ruta de acceso al registro del clúster.

Nombre del campo Tipo Descripción
dbfs DbfsStorageInfo Ubicación de DBFS del registro de clúster. Se debe proporcionar el destino. Por ejemplo,
{ "dbfs" : { "destination" : "dbfs:/home/cluster_log" } }

DbfsStorageInfo

Información de almacenamiento de DBFS.

Nombre del campo Tipo Descripción
destination STRING Destino de DBFS. Ejemplo: dbfs:/my/path

FileStorageInfo

Información de almacenamiento de archivos.

Nota:

Este tipo de ubicación solo está disponible para los clústeres configurados mediante Databricks Container Services.

Nombre del campo Tipo Descripción
destination STRING Destino del archivo. Ejemplo: file:/my/file.sh

InitScriptInfo

Ruta de acceso a un script de inicialización.

Para obtener instrucciones sobre el uso de scripts de inicialización con Databricks Container Services, consulte Uso de un script de inicialización.

Nota:

El tipo de almacenamiento de archivos (nombre de campo: file) solo está disponible para clústeres configurados mediante el Servicio de contenedor de Databricks. Consulte FileStorageInfo.

Nombre del campo Tipo Descripción
workspace O
dbfs (en desuso)

OR
abfss
WorkspaceStorageInfo

DbfsStorageInfo (en desuso)

ABFSSStorageInfo
Ubicación del área de trabajo del script de inicio. Se debe proporcionar el destino. Por ejemplo,
{ "workspace" : { "destination" : "/Users/someone@domain.com/init_script.sh" } }

(En desuso) Ubicación DBFS del script de inicio. Se debe proporcionar el destino. Por ejemplo,
{ "dbfs" : { "destination" : "dbfs:/home/init_script" } }

Ubicación de Azure Data Lake Storage (ADLS) del script de inicio. Se debe proporcionar el destino. Por ejemplo: { "abfss": { "destination" : "abfss://..." } }

KeyValue

Par clave-valor que especifica los parámetros de configuración.

Nombre del campo Tipo Descripción
key STRING Nombre de la propiedad de configuración.
value STRING Valor de propiedad de configuración.

NotebookLibrary

Especificación de un cuaderno que contiene el código de la canalización.

Nombre del campo Tipo Descripción
path STRING Ruta de acceso absoluta al cuaderno.

Este campo es obligatorio.

PipelinesAutoScale

Atributos que definen un clúster de escalado automático.

Nombre del campo Tipo Descripción
min_workers INT32 Número mínimo de trabajos a los que el clúster puede reducir verticalmente cuando se infrautiliza. También es el número inicial de trabajados que tendrá el clúster después de la creación.
max_workers INT32 El número máximo de trabajos a los que el clúster se puede escalar verticalmente cuando se sobrecarga. max_workers debe ser estrictamente mayor que min_workers.
mode STRING Modo de escalado automático para el clúster:

* ENHANCED para usar escalado automático mejorado.
* LEGACY para usar la funcionalidad de escalado automático del clúster.

PipelineLibrary

Especificación de las dependencias de la canalización.

Nombre del campo Tipo Descripción
notebook NotebookLibrary Ruta de acceso a un cuaderno en el que se definen conjuntos de datos de Delta Live Tables. La ruta de acceso debe estar en el área de trabajo de Databricks; por ejemplo:
{ "notebook" : { "path" : "/my-pipeline-notebook-path" } }.

PipelinesNewCluster

Especificación de clúster de canalización.

El sistema Delta Live Tables establece los siguientes atributos. Los usuarios no los pueden configurar:

  • spark_version
Nombre del campo Tipo Descripción
label STRING Etiqueta para la especificación de clúster, ya sea
default para configurar el clúster predeterminado o
maintenance para configurar el clúster de mantenimiento.

Este campo es opcional. El valor predeterminado es default.
spark_conf KeyValue 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 de clústeres.
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.
ssh_public_keys Matriz de objetos STRING. Contenido de clave pública SSH que se agregará a cada nodo de Spark de este clúster. Las claves privadas correspondientes se pueden usar para iniciar sesión con el nombre de usuario ubuntu en el puerto 2200. Se pueden especificar hasta 10 claves.
custom_tags KeyValue Objeto que contiene un conjunto de etiquetas para los recursos del clúster. Databricks etiqueta todos los recursos del clúster 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.
* Azure 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 proporciona esta configuració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.
spark_env_vars KeyValue Objeto que contiene un conjunto de pares de clave-valor de variables de entorno opcionales especificadas por el usuario. Los pares 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, Databricks 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 administradas por Azure 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"}
init_scripts Matriz de InitScriptInfo Configuración para almacenar scripts de inicialización. Se pueden especificar tantos destinos 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.
instance_pool_id STRING Identificador opcional del grupo de instancias al que pertenece el clúster. Consulte Referencia de configuración del grupo.
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 Instance Pools API.
policy_id STRING Un identificador de directiva de clúster.
num_workers OR autoscale INT32 O InitScriptInfo 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.

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

En el caso de la escalabilidad automática, los parámetros necesarios para escalar y reducir verticalmente los clústeres automáticamente en función de la carga.

Este campo es opcional.
apply_policy_default_values BOOLEAN Si se deben usar valores predeterminados de directiva para los atributos de clúster que faltan.

PipelineSettings

Configuración de una implementación de canalización.

Nombre del campo Tipo Descripción
id STRING Identificador único de esta canalización.

El sistema Delta Live Tables crea el identificador, que no se debe proporcionar al crear una canalización.
name STRING Un nombre descriptivo para esta canalización.

Este campo es opcional.

De manera predeterminada, el nombre de la canalización debe ser único. Para usar un nombre duplicado, establezca allow_duplicate_names en true en la configuración de canalización.
storage STRING Ruta de acceso a un directorio de DBFS para almacenar puntos de control y tablas creados por la canalización.

Este campo es opcional.

Si este campo está vacío, el sistema usa una ubicación predeterminada.
configuration Asignación de STRING:STRING. Lista de pares clave-valor que se van a agregar a la configuración de Spark del clúster que ejecutará la canalización.

Este campo es opcional.

Los elementos deben tener el formato de pares clave:valor.
clusters Matriz de PipelinesNewCluster. Matriz de especificaciones para que los clústeres ejecuten la canalización.

Este campo es opcional.

Si no se especifica, el sistema seleccionará una configuración de clúster predeterminada para la canalización.
libraries Matriz de PipelineLibrary. Cuadernos que contienen el código de la canalización y las dependencias necesarias para ejecutarla.
target STRING Nombre de base de datos para conservar los datos de salida de la canalización.

Para obtener más información, consulte Publicar datos de Delta Live Tables en el metastore de Hive.
continuous BOOLEAN Si se trata de una canalización continua.

Este campo es opcional.

El valor predeterminado es false.
development BOOLEAN Si se va a ejecutar la canalización en modo de desarrollo.

Este campo es opcional.

El valor predeterminado es false.
photon BOOLEAN Si la aceleración de Photon está habilitada para esta canalización.

Este campo es opcional.

El valor predeterminado es false.
channel STRING Canal de versión de Delta Live Tables que especifica la versión en tiempo de ejecución que se va a usar para esta canalización. Los valores admitidos son:

* preview para probar la canalización con los próximos cambios en el entorno de ejecución de Delta Live Tables.
* current para usar la versión actual del entorno de ejecución de Delta Live Tables.

Este campo es opcional.

El valor predeterminado es current.
edition STRING La edición del producto Delta Live Tables para ejecutar la canalización.

* CORE admite cargas de trabajo de ingesta de streaming.
* PRO también admite cargas de trabajo de ingesta de streaming y agrega compatibilidad con el procesamiento de captura de datos modificados (CDC).
* ADVANCED admite todas las características de la edición PRO y agrega compatibilidad con cargas de trabajo que requieren expectativas de Delta Live Tables para aplicar restricciones de calidad de datos.

Este campo es opcional.

El valor predeterminado es advanced.

PipelineStateInfo

Estado de una canalización, el estado de las actualizaciones más recientes e información sobre los recursos asociados.

Nombre del campo Tipo Descripción
state STRING Estado de la canalización. Uno de estos valores: IDLE o RUNNING.
pipeline_id STRING Identificador único de la canalización.
cluster_id STRING Identificador único del clúster que ejecuta la canalización.
name STRING Nombre descriptivo de la canalización.
latest_updates Matriz de UpdateStateInfo. Estado de las actualizaciones más recientes de la canalización, ordenadas con la actualización más reciente en primer lugar.
creator_user_name STRING Nombre de usuario del creador de la canalización.
run_as_user_name STRING Nombre de usuario con el que se ejecuta la canalización. Se trata de un valor de solo lectura derivado del propietario de la canalización.

UpdateStateInfo

Estado actual de la actualización de una canalización.

Nombre del campo Tipo Descripción
update_id STRING Identificador único de esta actualización.
state STRING Estado de la actualización. Uno de estos valores: QUEUED, CREATED,
WAITING_FOR_RESOURCES, INITIALIZING, RESETTING,
SETTING_UP_TABLES, RUNNING, STOPPING, COMPLETED,
FAILED o CANCELED.
creation_time STRING Marca de tiempo de cuando se ha creado esta actualización.

WorkspaceStorageInfo

Información de almacenamiento del área de trabajo.

Nombre del campo Tipo Descripción
destination STRING Destino del archivo. Ejemplo: /Users/someone@domain.com/init_script.sh