Share via


Desarrollo de un trabajo en Azure Databricks mediante conjuntos de recursos de Databricks

Los conjuntos de recursos de Databricks, también conocidos simplemente como agrupaciones, le permiten validar, implementar y ejecutar recursos de Azure Databricks mediante programación, como trabajos. También puede usar agrupaciones para administrar canalizaciones de Delta Live Tables mediante programación y trabajar con las pilas de MLOps. Consulte ¿Qué son las agrupaciones de recursos de Databricks?

En este artículo se describen los pasos que puede completar desde una configuración de desarrollo local para usar una agrupación que administra mediante programación un trabajo. Vea la Introducción al flujo de trabajo de Azure Databricks .

Si tiene trabajos existentes creados mediante la interfaz de usuario o la API de flujos de trabajo de Azure Databricks que desea mover a agrupaciones, debe volver a crearlos como archivos de configuración de agrupación. Para ello, Databricks recomienda crear primero una agrupación mediante los pasos siguientes y validar si la agrupación funciona. A continuación, puede agregar definiciones de trabajo, cuadernos y otros orígenes a la agrupación. Consulte Agregar una definición de trabajo existente a una agrupación.

Además de usar la CLI de Databricks para ejecutar un trabajo implementado por una agrupación, también puede ver y ejecutar estos trabajos en la interfaz de usuario de trabajos de Azure Databricks. Consulte Visualización y ejecución de un trabajo creado con un conjunto de recursos de Databricks.

Requisitos

Decisión: crear la agrupación mediante una plantilla o manualmente

Decida si desea crear una agrupación de ejemplo mediante una plantilla o manualmente:

Creación de la agrupación a partir de una plantilla

En estos pasos, creará la agrupación mediante la plantilla de agrupación predeterminada de Azure Databricks para Python, que consta de un cuaderno o código de Python, emparejado con 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. El área de trabajo remota debe tener habilitados los archivos del área de trabajo. Consulte ¿Qué son los archivos del área de trabajo?

Paso 1 Configuración de la autenticación

En este paso, configurará la autenticación entre la CLI de Databricks en la máquina de desarrollo y el área de trabajo de Azure Databricks. En este artículo se asume que quiere 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 Autenticación.

  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: crear el conjunto

Una agrupación contiene los artefactos que desea implementar y la configuración de los recursos que desea ejecutar.

  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 de 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 stub (sample) notebook, seleccione yes y presione Enter.

  6. Para Include a stub (sample) DLT pipeline, seleccione no y presione Enter. Con ello se indica a la CLI de Databricks que no defina una canalización de Delta Live Tables de ejemplo en la agrupación.

  7. Para Include a stub (sample) Python package, seleccione no y presione Enter. Con ello se indica a la CLI de Databricks que no agregue archivos de paquete wheel de Python de ejemplo ni instrucciones de compilación relacionadas a la agrupación.

Paso 3: exploración de la agrupación

Para ver los archivos que generó la plantilla, cambie al directorio raíz de la agrupación recién creada y abra este directorio con su IDE preferido como, por ejemplo, Visual Studio Code. Entre los tipos de especial interés se incluyen los siguientes:

  • databricks.yml: este archivo especifica el nombre de programación de la agrupación, incluye una referencia a la definición de trabajo y especifica la configuración sobre el área de trabajo de destino.
  • resources/<project-name>_job.yml: este archivo especifica la configuración del trabajo, incluida una tarea de cuaderno predeterminada.
  • src/notebook.ipynb: este archivo es un cuaderno de ejemplo que, cuando se ejecuta, simplemente inicializa una RDD que contiene los números del 1 al 10.

Para personalizar los trabajos, las asignaciones dentro de una declaración de trabajo corresponden a la carga de solicitud de la operación de creación del trabajo, tal como se define en POST /api/2.1/jobs/create en la referencia de API REST, expresada en formato YAML.

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 de la configuración del clúster en agrupaciones de recursos de Databricks.

Paso 4: Validación del archivo de configuración de la agrupación del proyecto

En este paso, comprobará si la configuración de la agrupación es válida.

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

    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.

Si realiza algún cambio en la agrupación después de este paso, debe repetir el paso para comprobar si la configuración de la agrupación sigue siendo válida.

Paso 5: Implementación del proyecto local en el área de trabajo remota

En este paso, implementará el cuaderno local en el área de trabajo remota de Azure Databricks y creará el trabajo de Azure Databricks en el área de trabajo.

  1. En la raíz de la agrupación, use la CLI de Databricks para ejecutar el comando bundle deploy de la siguiente manera:

    databricks bundle deploy -t dev
    
  2. Compruebe si se implementó el cuaderno local: en la barra lateral del área de trabajo de Azure Databricks, haga clic en Área de trabajo.

  3. Haga clic en la carpeta Usuarios ><your-username>> .bundle ><project-name>> dev > archivos > src. El cuaderno debería estar en esta carpeta.

  4. Compruebe si se creó el trabajo: en la barra lateral del área de trabajo de Azure Databricks, haga clic en Flujos de trabajo.

  5. En la pestaña Trabajos, haga clic en [dev <your-username>] <project-name>_job.

  6. Haga clic en la pestaña Tareas. Debe haber una tarea: 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 proyecto implementado

En este paso, ejecutará el trabajo de Azure Databricks en el área de trabajo.

  1. En el directorio raíz, use la CLI de Databricks para ejecutar el comando bundle run, como se indica a continuación, reemplazando <project-name> por el nombre del proyecto del paso 2:

    databricks bundle run -t dev <project-name>_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.

  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: Limpieza

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 comandobundle destroy de la siguiente manera:

    databricks bundle destroy
    
  2. Confirme la solicitud de eliminación del trabajo: cuando se le pida que destruya permanentemente los recursos, escriba y y presione Enter.

  3. Confirme la solicitud de eliminación del cuaderno: cuando se le pida que destruya permanentemente la carpeta implementada previamente y todos sus archivos, escriba y y presione Enter.

  4. Si también se desea eliminar la agrupación de la máquina de desarrollo, ahora se puede eliminar el directorio local del paso 2.

Ha llegado al final de los pasos para crear una agrupación con una plantilla.

Creación de la agrupación de forma manual

En estos pasos, creará una agrupación desde cero. Esta agrupación simple consta de dos cuadernos y la definición de un trabajo de Azure Databricks para ejecutar estos cuadernos. A continuación, valida, implementa y ejecuta los cuadernos implementados desde el trabajo en el área de trabajo de Azure Databricks. Estos pasos automatizan el inicio rápido titulado Creación del primer flujo de trabajo con un trabajo de Azure Databricks.

Paso 1: Crear la agrupación

Una agrupación contiene los artefactos que desea implementar y la configuración de los recursos que desea ejecutar.

  1. Cree o identifique un directorio vacío en la máquina de desarrollo.
  2. Cambie al directorio vacío en el terminal o abra el directorio vacío en el IDE.

Sugerencia

El directorio vacío podría estar asociado a un repositorio clonado administrado por un proveedor de Git. Esto le permite administrar la agrupación con control de versiones externo y colaborar más fácilmente con otros desarrolladores y profesionales de TI en el proyecto. Sin embargo, para ayudar a simplificar esta demostración, no se usa aquí un repositorio clonado.

Si decide clonar un repositorio para esta demostración, Databricks recomienda que el repositorio esté vacío o que solo tenga archivos básicos en él, como README y .gitignore. De lo contrario, los archivos preexistentes del repositorio pueden estar sincronizados innecesariamente con el área de trabajo de Azure Databricks.

Paso 2: Agregar cuadernos al proyecto

En este paso, agregará dos cuadernos al proyecto. El primer cuaderno obtiene una lista de nombres de bebé populares desde 2007 de los orígenes de datos públicos del Departamento de Salud de Nueva York. Consulte Nombres de bebé: Tendencias por nombre, inicio 2007 en el sitio web del departamento. A continuación, el primer cuaderno guarda estos datos en su volumen de Unity Catalog de Azure Databricks llamado my-volume en un esquema denominado default dentro de un catálogo con el nombre main. El segundo cuaderno consulta los datos guardados y muestra recuentos agregados de los nombres de bebé por nombre y sexo para 2014.

  1. En la raíz del directorio, cree el primer cuaderno, un archivo denominado retrieve-baby-names.py.

  2. Agregue el siguiente código al archivo retrieve-baby-names.py:

    # Databricks notebook source
    import requests
    
    response = requests.get('http://health.data.ny.gov/api/views/jxy9-yhdk/rows.csv')
    csvfile = response.content.decode('utf-8')
    dbutils.fs.put("/Volumes/main/default/my-volume/babynames.csv", csvfile, True)
    
  3. Cree el segundo cuaderno, un archivo denominado filter-baby-names.py, en el mismo directorio.

  4. Agregue el siguiente código al archivo filter-baby-names.py:

    # Databricks notebook source
    babynames = spark.read.format("csv").option("header", "true").option("inferSchema", "true").load("/Volumes/main/default/my-volume/babynames.csv")
    babynames.createOrReplaceTempView("babynames_table")
    years = spark.sql("select distinct(Year) from babynames_table").toPandas()['Year'].tolist()
    years.sort()
    dbutils.widgets.dropdown("year", "2014", [str(x) for x in years])
    display(babynames.filter(babynames.Year == dbutils.widgets.get("year")))
    

Paso 3: Adición de un archivo de esquema de configuración de agrupación al proyecto

Si usa un IDE como Visual Studio Code, PyCharm Professional o IntelliJ IDEA Ultimate que proporciona compatibilidad con archivos YAML y archivos de esquema JSON, puede usar el IDE para no solo crear el archivo de esquema de configuración de agrupación, sino para comprobar la sintaxis y el formato del archivo de configuración de agrupación del proyecto y proporcionar sugerencias de finalización de código, como se indica a continuación. Tenga en cuenta que, aunque el archivo de configuración de agrupación que creará más adelante en el paso 5 se basa en YAML, el archivo de esquema de configuración de agrupación de este paso se basa en JSON.

Visual Studio Code

  1. Agregue compatibilidad con el servidor de lenguaje YAML a Visual Studio Code, por ejemplo, instalando la extensión YAML desde Visual Studio Code Marketplace.

  2. Genere el archivo de esquema JSON de configuración del conjunto de recursos de Databricks mediante la CLI de Databricks para ejecutar el comando bundle schema y redirigir la salida a un archivo JSON. Por ejemplo, genere un archivo denominado bundle_config_schema.json dentro del directorio actual, como se indica a continuación:

    databricks bundle schema > bundle_config_schema.json
    
  3. Tenga en cuenta que, más adelante en el paso 5, agregará el siguiente comentario al principio del archivo de configuración de agrupación, que asocia el archivo de configuración de agrupación con el archivo de esquema JSON especificado:

    # yaml-language-server: $schema=bundle_config_schema.json
    

    Nota:

    En el comentario anterior, si el archivo de esquema JSON de configuración del conjunto de recursos de Databricks está en una ruta de acceso diferente, reemplace bundle_config_schema.json por la ruta de acceso completa al archivo de esquema.

PyCharm Professional

  1. Genere el archivo de esquema JSON de configuración del conjunto de recursos de Databricks mediante la CLI de Databricks para ejecutar el comando bundle schema y redirigir la salida a un archivo JSON. Por ejemplo, genere un archivo denominado bundle_config_schema.json dentro del directorio actual, como se indica a continuación:

    databricks bundle schema > bundle_config_schema.json
    
  2. Configure PyCharm para reconocer el archivo de esquema JSON de configuración de agrupación y, a continuación, complete la asignación de esquema JSON siguiendo las instrucciones de Configurar un esquema JSON personalizado.

  3. Tenga en cuenta que, más adelante en el paso 5, usará PyCharm para crear o abrir un archivo de configuración de agrupación. Por convención, este archivo se denomina databricks.yml.

Intellij IDEA Ultimate

  1. Genere el archivo de esquema JSON de configuración del conjunto de recursos de Databricks mediante la CLI de Databricks para ejecutar el comando bundle schema y redirigir la salida a un archivo JSON. Por ejemplo, genere un archivo denominado bundle_config_schema.json dentro del directorio actual, como se indica a continuación:

    databricks bundle schema > bundle_config_schema.json
    
  2. Configure IntelliJ IDEA para reconocer el archivo de esquema JSON de configuración de agrupación y, a continuación, complete la asignación de esquema JSON siguiendo las instrucciones de Configurar un esquema JSON personalizado.

  3. Tenga en cuenta que, más adelante en el paso 5, usará IntelliJ IDEA para crear o abrir un archivo de configuración de agrupación. Por convención, este archivo se denomina databricks.yml.

Paso 4: Configurar la autenticación

En este paso, configurará la autenticación entre la CLI de Databricks en la máquina de desarrollo y el área de trabajo de Azure Databricks. En este artículo se asume que quiere 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 Autenticación.

  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 5: Adición de un archivo de configuración de agrupación al proyecto

En este paso, definirá cómo desea implementar y ejecutar los dos cuadernos. Para esta demostración, debería usar un trabajo de Azure Databricks para ejecutar el primer cuaderno y, a continuación, el segundo. Dado que el primer cuaderno guarda los datos y el segundo cuaderno consulta los datos guardados, es recomendable que el primer cuaderno termine de ejecutarse antes de que se inicie el segundo cuaderno. Estos objetivos se modelarán dentro de un archivo de configuración de agrupación en el proyecto.

  1. En la raíz del directorio, cree el archivo de configuración de agrupación, un archivo denominado databricks.yml.
  2. Agregue el código siguiente al archivo databricks.yml, reemplazando <workspace-url> por la dirección URL por área de trabajo, por ejemplo https://adb-1234567890123456.7.azuredatabricks.net. Esta dirección URL debe coincidir con la del archivo .databrickscfg:

Sugerencia

La primera línea, a partir de # yaml-language-server, solo es necesaria si el IDE lo admite. Consulte el paso 3 anterior para obtener más información.

# yaml-language-server: $schema=bundle_config_schema.json
bundle:
  name: baby-names

resources:
  jobs:
    retrieve-filter-baby-names-job:
      name: retrieve-filter-baby-names-job
      job_clusters:
        - job_cluster_key: common-cluster
          new_cluster:
            spark_version: 12.2.x-scala2.12
            node_type_id: Standard_DS3_v2
            num_workers: 1
      tasks:
        - task_key: retrieve-baby-names-task
          job_cluster_key: common-cluster
          notebook_task:
            notebook_path: ./retrieve-baby-names.py
        - task_key: filter-baby-names-task
          depends_on:
            - task_key: retrieve-baby-names-task
          job_cluster_key: common-cluster
          notebook_task:
            notebook_path: ./filter-baby-names.py

targets:
  development:
    workspace:
      host: <workspace-url>

Para personalizar los trabajos, las asignaciones dentro de una declaración de trabajo corresponden a la carga de solicitud de la operación de creación del trabajo, tal como se define en POST /api/2.1/jobs/create en la referencia de API REST, expresada en formato YAML.

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 de la configuración del clúster en agrupaciones de recursos de Databricks.

Paso 6: Validación del archivo de configuración de agrupación del proyecto

En este paso, comprobará si la configuración de la agrupación es válida.

  1. Utilice la CLI de Databricks para ejecutar el comando bundle validate de la siguiente manera:

    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.

Si realiza algún cambio en la agrupación después de este paso, debe repetir el paso para comprobar si la configuración de la agrupación sigue siendo válida.

Paso 7: Implementar el proyecto local en el área de trabajo remota

En este paso, implementará los dos cuadernos locales en el área de trabajo remota de Azure Databricks y creará el trabajo de Azure Databricks en el área de trabajo.

  1. Utilice la CLI de Databricks para ejecutar el comando bundle deploy de la siguiente manera:

    databricks bundle deploy -t development
    
  2. Compruebe si se implementaron los dos cuadernos locales: en la barra lateral del área de trabajo de Azure Databricks, haga clic en Área de trabajo.

  3. Haga clic en la carpeta Usuarios ><your-username>> .bundle > baby-names > desarrollo > archivos. Los dos cuadernos deben estar en esta carpeta.

  4. Compruebe si se creó el trabajo: en la barra lateral del área de trabajo de Azure Databricks, haga clic en Flujos de trabajo.

  5. En la pestaña Trabajos, haga clic en retrieve-filter-baby-names-job.

  6. Haga clic en la pestaña Tareas. Debe haber dos tareas: retrieve-baby-names-task y filter-baby-names-task.

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

Paso 8: Ejecutar el proyecto implementado

En este paso, ejecutará el trabajo de Azure Databricks en el área de trabajo.

  1. Utilice la CLI de Databricks para ejecutar el comando bundle run de la siguiente manera:

    databricks bundle run -t development retrieve-filter-baby-names-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.

  3. En el área de trabajo de Azure Databricks, después de que las dos tareas se completen correctamente y muestren barras de título verdes, haga clic en la tarea filter-baby-names-task para ver los resultados de la consulta.

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

Paso 9: Limpieza

En este paso, eliminará los dos cuadernos implementados y el trabajo del área de trabajo.

  1. Utilice la CLI de Databricks para ejecutar el comando bundle destroy de la siguiente manera:

    databricks bundle destroy
    
  2. Confirme la solicitud de eliminación del trabajo: cuando se le pida que destruya permanentemente los recursos, escriba y y presione Enter.

  3. Confirme la solicitud de eliminación de cuadernos: cuando se le pida que destruya permanentemente la carpeta implementada previamente y todos sus archivos, escriba y y presione Enter.

Al ejecutar el bundle destroy comando, solo se elimina el trabajo implementado y la carpeta que contiene los dos cuadernos implementados. Este comando no elimina ningún efecto secundario, como el archivo babynames.csv que creó el primer cuaderno. Para eliminar el archivo babybnames.csv, haga lo siguiente:

  1. En la barra lateral del área de trabajo de Azure Databricks, haga clic en Catálogo.
  2. Haga clic en Examinar DBFS.
  3. Haga clic en la carpeta FileStore.
  4. Haga clic en la flecha desplegable situada junto a babynames.csv y haga clic en Eliminar.
  5. Si también desea eliminar la agrupación de la máquina de desarrollo, ahora puede eliminar el directorio local del paso 1.

Agregar una definición de trabajo existente a una agrupación

Puede usar una definición de trabajo existente como base para definir un nuevo trabajo en un archivo de configuración de agrupación. Para ello, complete los pasos que se indican a continuación.

Nota:

Los pasos siguientes crean un nuevo trabajo que tiene la misma configuración que el trabajo existente. Sin embargo, el nuevo trabajo tiene un id. de trabajo diferente al existente. No se puede importar automáticamente un id. de trabajo existente en una agrupación.

Paso 1: Obtener la definición de trabajo existente en formato YAML

En este paso, use la interfaz de usuario del área de trabajo de Azure Databricks para obtener la representación YAML de la definición de trabajo existente.

  1. En la barra lateral del área de trabajo de Azure Databricks, haga clic en Flujos de trabajo.
  2. En la pestaña Trabajos, haga clic en el vínculo Nombre del trabajo.
  3. Junto al botón Ejecutar ahora, haga clic en los puntos suspensivos y, a continuación, haga clic en Ver YAML.
  4. En la pestaña Crear, copie el YAML de la definición del trabajo en el portapapeles local haciendo clic en Copiar.

Paso 2: Adición de la definición de trabajo YAML a un archivo de configuración de agrupación

En el archivo de configuración de agrupación, agregue el YAML que copió del paso anterior a una de las siguientes ubicaciones etiquetadas <job-yaml-can-go-here> en los archivos de configuración de agrupación, como se indica a continuación:

resources:
  jobs:
    <some-unique-programmatic-identifier-for-this-job>:
      <job-yaml-can-go-here>

targets:
  <some-unique-programmatic-identifier-for-this-target>:
    resources:
      jobs:
        <some-unique-programmatic-identifier-for-this-job>:
          <job-yaml-can-go-here>

Paso 3: Adición de cuadernos, archivos de Python y otros artefactos a la agrupación

Los archivos y cuadernos de Python a los que se hace referencia en el trabajo existente deben moverse a los orígenes de la agrupación.

Para mejorar la compatibilidad con agrupaciones, los cuadernos deben usar el formato del cuaderno de IPython (.ipynb). Si desarrolla la agrupación localmente, puede exportar un cuaderno existente desde un área de trabajo de Azure Databricks al formato .ipynb haciendo clic en Archivo > Exportar > Cuaderno de IPython desde la interfaz de usuario del cuaderno de Azure Databricks. Por convención, debe colocar el cuaderno descargado en el directorio src/ de la agrupación.

Después de agregar los cuadernos, los archivos de Python y otros artefactos a la agrupación, asegúrese de que la definición del trabajo hace referencia a ellos. Por ejemplo, para un cuaderno con el nombre de archivo de hello.ipynb que está en un directorio src/ y el directorio src/ está en la misma carpeta que el archivo de configuración de agrupación que hace referencia al directorio src/, la definición del trabajo puede expresarse de la siguiente manera:

resources:
  jobs:
    hello-job:
      name: hello-job
      tasks:
      - task_key: hello-task
        notebook_task:
          notebook_path: ./src/hello.ipynb

Paso 4: Validación, implementación y ejecución del nuevo trabajo

  1. Compruebe que los archivos de configuración de la agrupación son sintácticamente correctos mediante la ejecución del siguiente comando:

    databricks bundle validate
    
  2. Implemente la agrupación mediante la ejecución del comando siguiente. En este comando, reemplace <target-identifier> por el identificador de programación único para el destino de la configuración de la agrupación:

    databricks bundle deploy -t <target-identifier>
    
  3. Ejecute el trabajo con el comando siguiente.

    databricks bundle run -t <target-identifier> <job-identifier>
    
    • Reemplace <target-identifier> por el identificador de programación único para el destino de la configuración de la agrupación.
    • Reemplace <job-identifier> por un identificador de programación único para el trabajo de la configuración de agrupación.

Configuración de un trabajo que usa un proceso sin servidor

Importante

El proceso sin servidor para los flujos de trabajo está en Versión preliminar pública. Para obtener información sobre la idoneidad y la habilitación, consulte Habilitación de la versión preliminar pública de proceso sin servidor.

En los ejemplos siguientes se muestran las configuraciones de agrupación para crear un trabajo que usa el proceso sin servidor.

Para usar el proceso sin servidor para ejecutar un trabajo que incluya tareas de cuaderno, omita la configuración job_clusters del archivo de configuración de agrupación.

# yaml-language-server: $schema=bundle_config_schema.json
bundle:
  name: baby-names

resources:
  jobs:
    retrieve-filter-baby-names-job-serverless:
      name: retrieve-filter-baby-names-job-serverless
      tasks:
        - task_key: retrieve-baby-names-task
          notebook_task:
            notebook_path: ./retrieve-baby-names.py
        - task_key: filter-baby-names-task
          depends_on:
            - task_key: retrieve-baby-names-task
          notebook_task:
            notebook_path: ./filter-baby-names.py

  targets:
    development:
      workspace:
        host: <workspace-url>

Para usar el proceso sin servidor para ejecutar un trabajo que incluya tareas de Python, incluya la configuración environments.

# yaml-language-server: $schema=bundle_config_schema.json
bundle:
  name: serverless-python-tasks

resources:
jobs:
  serverless-python-job:
    name: serverless-job-with-python-tasks

    tasks:
      - task_key: wheel-task-1
        python_wheel_task:
          entry_point: main
          package_name: wheel_package
        environment_key: Default

    environments:
      - environment_key: Default
        spec:
          client: "1"
          dependencies:
            - workflows_authoring_toolkit==0.0.1

targets:
  development:
    workspace:
      host: <workspace-url>

Consulte Ejecución del trabajo de Azure Databricks con un proceso sin servidor para flujos de trabajo.