Comparteix via


Desarrollo de un trabajo con Conjuntos de recursos de Databricks

Los conjuntos de recursos de Databricks, también conocidos como agrupaciones, contienen los artefactos que desea implementar y la configuración de los recursos de Azure Databricks, como los trabajos que desea ejecutar, y le permiten validar, implementar y ejecutarlos mediante programación. Consulte ¿Qué son las agrupaciones de recursos de Databricks?

En esta página se describe cómo crear una agrupación para administrar un trabajo mediante programación. Consulte Trabajos de Lakeflow. La agrupación se crea mediante la plantilla de agrupación predeterminada de conjuntos de recursos de Databricks para Python, que consta de un cuaderno y la definición de un trabajo para ejecutarlo. A continuación, valide, implemente y ejecute el trabajo implementado en el área de trabajo de Azure Databricks.

Sugerencia

Si tiene trabajos existentes que se crearon mediante la interfaz de usuario o la API de trabajos de Lakeflow que desea mover a agrupaciones, debe definirlos en los archivos de configuración de un lote. Databricks recomienda crear primero una agrupación mediante los pasos siguientes y a continuación validar si la agrupación funciona. Luego puede agregar definiciones de trabajo, cuadernos y otras fuentes adicionales al paquete. Consulte Recuperación de una definición de trabajo existente mediante la interfaz de usuario.

Si desea crear una agrupación desde cero, consulte Creación de una agrupación manualmente.

Requisitos

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 especificó. 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 un terminal o símbolo del sistema independiente, 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: Inicializar el paquete

Inicialice una agrupación mediante la plantilla de proyecto de agrupación de Python predeterminada.

  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 bundle init:

    databricks bundle init
    
  3. En Template to use, deje el valor predeterminado de default-python presionando Enter.

  4. En Unique name for this project, deje el valor predeterminado de my_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.

  5. Para Include a job that runs a notebook, seleccione yes y presione Enter.

  6. Para Include an ETL pipeline, seleccione no y presione Enter.

  7. Para Include a stub (sample) Python package, seleccione no y presione Enter.

  8. Para Use serverless, seleccione yes y presione Enter. Esto instruye a la CLI de Databricks que configure el paquete para que se ejecute en cómputo sin servidor.

  9. Para Default catalog for any tables created by this project [hive_metastore], escriba el nombre de un catálogo existente en Unity Catalog.

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

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. 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: este archivo especifica la configuración del trabajo, incluida una tarea de cuaderno predeterminada. Para obtener información sobre la configuración del trabajo, consulte trabajo.
  • src/: esta carpeta contiene los archivos de origen del trabajo.
  • src/sample_notebook.ipynb: este notebook lee una tabla de ejemplo.
  • tests/: esta carpeta contiene pruebas unitarias de ejemplo.
  • README.md: Este archivo proporciona información adicional sobre cómo empezar y usar esta plantilla del paquete.

Sugerencia

Puede definir, combinar e invalidar la configuración de los nuevos clústeres de trabajos en agrupaciones mediante las técnicas descritas en Invalidación con la configuración de destino.

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: Implementar la agrupación en el área de trabajo remota

A continuación, implemente el trabajo en el área de trabajo remota de Azure Databricks y compruebe el trabajo en el área de trabajo.

  1. En la raíz del lote, utilice la CLI de Databricks para ejecutar el comando bundle deploy.

    databricks bundle deploy --target dev
    
  2. Confirme que el cuaderno se implementó:

    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 ><project-name>> dev > files > src. El cuaderno debería estar en esta carpeta.
  3. Compruebe si se creó el trabajo:

    1. En la barra lateral del área de trabajo de Azure Databricks, haga clic en Trabajos y canalizaciones.
    2. Opcionalmente, seleccione los filtros Trabajos y Propiedad de mí .
    3. Haga clic en [dev <your-username>] sample_job.
    4. Haga clic en la pestaña Tareas . Debe haber una notebook_task.

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 del trabajo implementado

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

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

    databricks bundle run --target dev sample_job
    
  2. Copie el valor de Run URL que aparece en el terminal y pegue este valor en el explorador web para abrir el área de trabajo de Azure Databricks. Consulte Visualización y ejecución de un trabajo creado con Conjuntos de recursos de Databricks

  3. En el área de trabajo de Azure Databricks, una vez que se complete correctamente la tarea de trabajo y aparezca una barra de título verde, haga clic en la tarea de trabajo para ver los resultados.

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: Ejecutar pruebas

Por último, use pytest para ejecutar pruebas localmente:

uv run pytest

Paso 8: Limpiar

En este paso, eliminará el cuaderno implementado y el trabajo del área de trabajo.

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

    databricks bundle destroy --target dev
    
  2. Cuando se le pida eliminar permanentemente todos los archivos y directorios del área de trabajo, 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.