Compartir vía


Desarrollo de canalizaciones declarativas de Spark de Lakeflow con conjuntos de recursos de Databricks

Los conjuntos de recursos de Databricks, también conocidos simplemente como agrupaciones, permiten validar, implementar y ejecutar recursos de Azure Databricks mediante programación, como canalizaciones declarativas de Spark de Lakeflow. Consulte ¿Qué son las agrupaciones de recursos de Databricks?

En esta página se describe cómo crear una agrupación para administrar mediante programación una canalización. Vea las canalizaciones declarativas de Lakeflow Spark. El paquete se crea mediante el comando CLI de Databricks pipelines init, que define una canalización ETL y un trabajo para ejecutarlo. A continuación, valide, implemente y ejecute la canalización implementada en el área de trabajo de Azure Databricks en computación sin servidor.

Sugerencia

Si tiene canalizaciones existentes que se crearon mediante la interfaz de usuario o la API de Azure Databricks que desea mover a agrupaciones, debe definirlas en los archivos de configuración de un lote. Databricks recomienda crear primero un lote mediante los pasos siguientes y, a continuación, agregar configuración y otros orígenes a la agrupación. Consulte Recuperación de una definición de canalización existente mediante la interfaz de usuario.

Requisitos

(Opcional) Instalar un módulo de Python para admitir el desarrollo de canalizaciones locales

Databricks proporciona un módulo de Python para facilitar el desarrollo local del código de las canalizaciones declarativas de Spark de Lakeflow, ofreciendo comprobación de sintaxis, autocompletado y verificación de tipos de datos mientras se escribe el código en su IDE.

El módulo de Python para el desarrollo local está disponible en PyPi. Para instalar el módulo, consulte Código auxiliar de Python para DLT.

Paso 1 Configuración de la autenticación

En primer lugar, configure la autenticación entre la CLI de Databricks en la máquina de desarrollo y el área de trabajo de Azure Databricks. En esta página se supone que desea usar la autenticación de usuario a máquina (U2M) de OAuth y un perfil de configuración de Azure Databricks correspondiente denominado DEFAULT para la autenticación.

Nota:

La autenticación U2M es adecuada para probar estos pasos en tiempo real. Para flujos de trabajo totalmente automatizados, Databricks recomienda usar la autenticación de máquina a máquina (M2M) de OAuth en su lugar. Consulte las instrucciones de configuración de autenticación de M2M en Autorización del acceso de la entidad de servicio a Azure Databricks con OAuth.

  1. Use el CLI de Databricks para iniciar la administración de tokens de OAuth localmente mediante la ejecución del siguiente comando para cada área de trabajo de destino.

    En el comando siguiente, reemplace <workspace-url> por la dirección URL de Azure Databricks por área de trabajo, por ejemplo, https://adb-1234567890123456.7.azuredatabricks.net.

    databricks auth login --host <workspace-url>
    
  2. La CLI de Databricks le pide que guarde la información que especificó como un perfil de configuración de Azure Databricks. Presione Enter para aceptar el nombre del perfil sugerido o escriba el nombre de un perfil nuevo o existente. Cualquier perfil existente con el mismo nombre se sobrescribe con la información que introdujo. Puede usar perfiles para cambiar rápidamente el contexto de autenticación entre varias áreas de trabajo.

    Para obtener una lista de los perfiles existentes, en una terminal o una línea de comandos por separado, use la CLI de Databricks para ejecutar el comando databricks auth profiles. Para ver la configuración existente de un perfil específico, ejecute el comando databricks auth env --profile <profile-name>.

  3. En el explorador web, complete las instrucciones en pantalla para iniciar sesión en el área de trabajo de Azure Databricks.

  4. Para ver el valor actual del token de OAuth de un perfil y la próxima marca de tiempo de expiración del token, ejecute uno de los siguientes comandos:

    • databricks auth token --host <workspace-url>
    • databricks auth token -p <profile-name>
    • databricks auth token --host <workspace-url> -p <profile-name>

    Si tiene varios perfiles con el mismo valor de --host, es posible que tenga que especificar las opciones --host y -p para ayudar a la CLI de Databricks a encontrar la información correcta del token de OAuth coincidente.

Paso 2: crear el conjunto

Inicialice una agrupación con una canalización:

  1. Use el terminal o el símbolo del sistema para cambiar a un directorio de la máquina de desarrollo local que contendrá la agrupación generada por la plantilla.

  2. Use la CLI de Databricks para ejecutar el comando pipelines init:

    databricks pipelines init
    
  3. En Unique name for this project, deje el valor predeterminado de my_pipeline_project o escriba un valor diferente y, a continuación, presione Enter. Con ello se determina el nombre del directorio raíz de esta agrupación. Este directorio raíz se crea en el directorio de trabajo actual.

  4. Para Initial catalog, escriba el nombre de un catálogo existente en Unity Catalog.

  5. En Use a personal schema for each user working on this project?, seleccione yes.

  6. En Initial language for this project, seleccione python.

Paso 3: Explora el paquete

Para ver los archivos que generó la plantilla, cambie al directorio raíz de la agrupación recién creada. La estructura siguiente se crea de forma predeterminada:

my_pipeline_project
├── databricks.yml
├── pyproject.toml
├── README.md
├── resources
│   ├── my_pipeline_project_etl.pipeline.yml
│   └── sample_job.job.yml
└── src
    └── my_pipeline_project_etl
        ├── explorations
        │   └── sample_exploration.ipynb
        ├── README.md
        └── transformations
            ├── sample_trips_my_pipeline_project.py
            └── sample_zones_my_pipeline_project.py

Los archivos de especial interés incluyen los siguientes:

  • databricks.yml: este archivo especifica el nombre de programación del lote, incluye referencias a los archivos del lote, define las variables de catálogo y esquema y especifica la configuración de las áreas de trabajo de destino.

  • resources/sample_job.job.yml y resources/<project-name>_etl_pipeline.yml: estos archivos definen el trabajo que contiene una tarea de actualización de canalización y la configuración de la canalización. Para obtener información sobre la configuración de canalización, consulte Canalización.

  • src/: esta carpeta contiene los archivos de origen, las exploraciones y las transformaciones de la canalización de ejemplo.

    Sugerencia

    Si agrega pruebas, use pytest para ejecutarlas localmente:

    uv run pytest
    
  • README.md: Este archivo proporciona información adicional sobre cómo empezar y usar esta plantilla del paquete.

Paso 4: Validar la configuración del lote

Ahora compruebe si la configuración del lote es válida.

  1. En el directorio raíz, use la CLI de Databricks para ejecutar el bundle validate comando :

    databricks bundle validate
    
  2. Si se devuelve un resumen de la configuración de la agrupación, indica que la validación se ha realizado correctamente. Si se devuelven errores, corrija los errores y repita este paso.

Paso 5: Implementación de la canalización en el área de trabajo remota

A continuación, despliegue el paquete en su área de trabajo remota de Azure Databricks y verifique la canalización en su área de trabajo.

  1. En la raíz del paquete, use un comando de la CLI deploy de Databricks:

    databricks bundle deploy --target dev
    

    O:

    databricks pipelines deploy --target dev
    

    Nota:

    La plantilla predeterminada incluye un trabajo que ejecuta la canalización todos los días, pero esto se pausa para el modo de implementación objetivo dev. Consulte Modos de implementación de Conjunto de recursos de Databricks.

  2. Confirme que el paquete se desplegó.

    1. En la barra lateral del área de trabajo de Azure Databricks, haga clic en Área de trabajo.
    2. Haga clic en la carpeta Usuarios ><your-username>>.bundle y busque el proyecto de agrupación.
  3. Compruebe si se creó la canalización:

    1. En la barra lateral del área de trabajo de Azure Databricks, haga clic en Trabajos y canalizaciones.
    2. Opcionalmente, seleccione los filtros Canalizaciones y Propiedad de mí .
    3. Haga clic en [dev <your-username>] <project-name>_etl.

Si realiza algún cambio en la agrupación después de este paso, debe repetir los pasos 4 y 5 para comprobar si la configuración de la agrupación sigue siendo válida y volver a implementar el proyecto.

Paso 6: Ejecución de la canalización implementada

Ahora, desencadene una ejecución de la canalización en el área de trabajo desde la línea de comandos.

  1. En el directorio raíz, use el comando de la CLI pipelines run de Databricks. Si solo hay una canalización en el proyecto, no es necesario especificar un nombre de canalización.

    databricks pipelines run my_pipeline_project_etl --target dev
    
  2. Copie el valor de Update URL que aparece en el terminal y pegue este valor en el explorador web para abrir el área de trabajo de Azure Databricks.

  3. En el área de trabajo de Azure Databricks, una vez completada correctamente la ejecución de la canalización, haga clic en las vistas materializadas para ver los detalles de cada vista.

Si realiza algún cambio en la agrupación después de este paso, debe repetir los pasos del 4 al 6 para comprobar si la configuración de la agrupación sigue siendo válida, volver a implementar el proyecto y ejecutarlo.

Paso 7: Historial de salida y registros de eventos

La información proporcionada por los pipelines history comandos y pipelines logs puede ayudar a diagnosticar errores.

Para recuperar las ejecuciones anteriores de la canalización:

databricks pipelines history my_pipeline_project_etl
Updates Summary for pipeline my_pipeline_project_etl:
Update ID: a62293ec-8a63-43b7-8629-b218d56dac7c
   State: COMPLETED
   Cause: API_CALL
   Creation Time: 2026-01-29T23:16:14Z
   Full Refresh: false
   Validate Only: false

Para generar (en JSON) los eventos de la actualización más reciente de la canalización:

databricks pipelines logs my_pipeline_project_etl

Use jq para filtrar los resultados. Vea Filtrado de la salida JSON con jq.

Paso 8: Limpiar

En este paso, eliminarás el paquete implementado y la canalización del espacio de trabajo.

  1. En el directorio raíz, use la CLI de Databricks para ejecutar el pipelines destroy comando :

    databricks pipelines destroy --target dev
    
  2. Cuando se le pida que destruya permanentemente los recursos, la canalización y las tablas y vistas administradas por la canalización, escriba y y presione Enter.

  3. Si también desea eliminar el paquete de su entorno de desarrollo, ahora puede eliminar el directorio del proyecto local.