Configuración de versiones de entorno para canalizaciones

Important

Las versiones de entorno para SDP están en beta.

Una versión del entorno fija la versión de Python y el conjunto de bibliotecas Python preinstaladas disponibles para el código Python de la canalización. Las dependencias externas que agregue a la canalización se superponen a esta base.

Las versiones del entorno desacoplan el entorno de ejecución de Python de la canalización desde la versión de Databricks Runtime en la que se ejecuta la canalización. Mientras se establece una versión del entorno, las actualizaciones de Databricks Runtime no cambian la versión del idioma Python ni las versiones de biblioteca preinstaladas. El entorno de ejecución de Python también es compatible con los Jobs sin servidor y los cuadernos que usan la misma versión del entorno. Para consultar la versión actual de Databricks Runtime para Lakeflow Spark Declarative Pipelines, consulte las notas de la versión y el proceso de actualización de la versión de Lakeflow Spark Declarative Pipelines.

Important

Las canalizaciones con una versión de entorno ejecutan código Python mediante Spark Connect. Spark Connect cambia el comportamiento del código de canalización. Antes de habilitar una versión de entorno en una canalización existente, consulte Compatibilidad de la versión del entorno para conocer las limitaciones, los cambios de comportamiento, el examen de compatibilidad y el flujo de trabajo de migración.

Requirements

Las versiones del entorno tienen los siguientes requisitos:

  • La canalización debe usar Unity Catalog. No se admiten canalizaciones de metastore de Hive.

Versiones de entorno admitidas

SDP admite las versiones 3 y 4 del entorno tanto en proceso sin servidor como en el clásico. Para obtener la versión del idioma Python y la lista completa de bibliotecas de Python preinstaladas disponibles en cada versión, consulte la referencia de versión de environment.

Habilitación de una versión de entorno en una canalización

Puede configurar una versión del entorno a través de la interfaz de usuario del editor de pipelines, la API REST de Pipelines o los paquetes de automatización declarativa.

Recuerde comprobar la compatibilidad con Spark Connect antes de habilitar una versión de entorno en una canalización.

Habilitar a través de la interfaz de usuario

  1. En el editor de canalización, haga clic en Configuración.
  2. En Entorno de canalización, seleccione el icono de lápiz.Editar entorno.
  3. Seleccione una versión del entorno en la lista desplegable.
  4. Guarde la configuración de la canalización.

Las dependencias externas agregadas en la sección Entorno de canalización se superponen a las bibliotecas incluidas con la versión de entorno seleccionada. Consulte Administración de dependencias de Python para canalizaciones.

Habilitación a través de la API

La API REST de Pipelines acepta un bloque environment al crear y actualizar canalizaciones. La autenticación de token de acceso personal debe estar habilitada para el área de trabajo.

Para crear una canalización con una versión de entorno:

curl --request POST \
  --url 'https://<workspace-host>/api/2.0/pipelines' \
  --header 'Authorization: Bearer <personal-access-token>' \
  --header 'Content-Type: application/json' \
  --data-raw '{
    "name": "<pipeline-name>",
    "catalog": "<catalog>",
    "schema": "<schema>",
    "channel": "CURRENT",
    "environment": {
      "environment_version": "4",
      "dependencies": [
        "simplejson==3.19.*"
      ]
    }
  }'

Para establecer la versión del entorno en una canalización existente, envíe el mismo bloque environment con PUT /api/2.0/pipelines/<pipeline-id>.

Activar a través de paquetes de automatización declarativa

Al crear una canalización mediante agrupaciones de automatización declarativa, puede establecer una versión de entorno en la definición de YAML de la canalización.

  1. Asegúrese de que la CLI de Databricks está en la versión v0.294.0 o posterior. Si no es así, actualice siguiendo la guía de instalación.
  2. Configura un paquete siguiendo el tutorial de paquetes de pipelines.
  3. Localice el archivo YAML de la canalización en su paquete, normalmente <bundle-folder>/resources/<pipeline_name>_pipeline.yml.
  4. Configure los campos environment_version y dependencies en el YAML de la canalización:
resources:
  pipelines:
    my_pipeline:
      name: my_pipeline
      catalog: ${var.catalog}
      schema: ${var.schema}
      root_path: '../src/my_pipeline'
      libraries:
        - glob:
            include: ../src/my_pipeline/transformations/**
      environment:
        environment_version: 4
        dependencies:
          - --editable ${workspace.file_path}

Comprobación de la versión del entorno en una canalización

Para comprobar si una versión del entorno está configurada en una canalización:

  • INTERFAZ de usuario: abra la configuración de canalización y compruebe la sección Entorno de canalización o inspeccione el panel JSON del environment.environment_version campo.
  • API: llame a GET /api/2.0/pipelines/<pipeline-id> y busque environment.environment_version en la respuesta.
  • Registro de eventos: inspeccione el create_update evento del environment_version campo.

Deshabilitación de la versión del entorno en una canalización

Elimine la versión del entorno a través de la sección Entorno de canalización en la configuración de la canalización, o elimine el campo environment_version del bloque environment en la definición de la API o del paquete.

Cuando se quita la versión del entorno, la canalización vuelve a su configuración anterior del entorno de ejecución de Python.

Consulte también