Compartir a través de


Databricks Connect para Python

Nota:

Este artículo describe Databricks Connect para Databricks Runtime 13.3 LTS y versiones posteriores.

En este artículo se muestra cómo empezar a trabajar rápidamente con Databricks Connect usando Python y PyCharm.

Databricks Connect le permite conectar los clústeres de Azure Databricks a entornos de desarrollo integrado populares como PyCharm, servidores de cuadernos y otras aplicaciones personalizadas. Consulte ¿Qué es Databricks Connect?.

Tutorial

Para omitir este tutorial y usar en su lugar un IDE diferente, consulte Pasos siguientes.

Requisitos

Para completar este tutorial, debe cumplir los siguientes requisitos:

  • El área de trabajo de Azure Databricks de destino debe tener habilitado el catálogo de Unity.
  • Tiene PyCharm instalado. Este tutorial se ha probado con PyCharm Community Edition 2023.3.5. Si usa una versión o edición diferente de PyCharm, las instrucciones siguientes pueden variar.
  • El proceso cumple los requisitos de instalación de Databricks Connect para Python.
  • Si usa el proceso clásico, necesitará el identificador del clúster. Para obtener el identificador del clúster, en el área de trabajo, haga clic en Proceso en la barra lateral y luego haga clic en el nombre del clúster. En la barra de direcciones del explorador web, copie la cadena de caracteres entre clusters y configuration de la dirección URL.

Paso 1: configuración de la autenticación de Azure Databricks

En este tutorial se usa la autenticación de usuario a máquina (U2M) de OAuth y un perfil de configuración de Azure Databricks para autenticarse en el área de trabajo de Azure Databricks. Para usar un tipo de autenticación diferente, consulte Configuración de propiedades de conexión.

La configuración de la autenticación U2M de OAuth requiere la CLI de Databricks, como se indica a continuación:

  1. Si aún no está instalado, instale la CLI de Databricks de la siguiente manera:

    Linux, macOS

    Use Homebrew para instalar la CLI de Databricks mediante la ejecución de los dos comandos siguientes:

    brew tap databricks/tap
    brew install databricks
    

    Windows

    Puede usar winget, Chocolatey o el Subsistema de Windows para Linux (WSL) a fin de instalar la CLI de Databricks. Si no puede usar winget, Chocolatey o WSL, debe omitir este procedimiento y usar el símbolo del sistema o PowerShell para instalar la CLI de Databricks desde el origen en su lugar.

    Nota:

    La instalación de la CLI de Databricks con Chocolatey es Experimental.

    A fin de usar winget para instalar la CLI de Databricks, ejecute los dos comandos siguientes y reinicie el símbolo del sistema:

    winget search databricks
    winget install Databricks.DatabricksCLI
    

    Para usar Chocolatey a fin de instalar la CLI de Databricks, ejecute el siguiente comando:

    choco install databricks-cli
    

    Para usar WSL a fin de instalar la CLI de Databricks, haga lo siguiente:

    1. Instale curl y zip mediante WSL. Para más información, consulte la documentación del sistema operativo.

    2. Use WSL para instalar la CLI de Databricks mediante la ejecución del siguiente comando:

      curl -fsSL https://raw.githubusercontent.com/databricks/setup-cli/main/install.sh | sh
      
  2. Confirme que la CLI de Databricks está instalada mediante la ejecución del siguiente comando, que muestra la versión actual instalada de la CLI de Databricks: Esta versión debe ser 0.205.0 o superior.

    databricks -v
    

    Nota:

    Si ejecuta databricks pero recibe un error como command not found: databricks, o si ejecuta databricks -v y aparece un número de versión de 0.18 o inferior, significa que la máquina no encuentra la versión correcta del ejecutable de la CLI de Databricks. Para corregirlo, consulte Comprobación de la instalación de la CLI.

Inicie la autenticación U2M de OAuth, como se indica a continuación:

  1. Use la 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 --configure-cluster --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. En la lista de clústeres disponibles que aparecen en el terminal o el símbolo del sistema, use las teclas de flecha arriba y flecha abajo para seleccionar el clúster de Azure Databricks de destino en el área de trabajo y a continuación, presione Enter. También puede escribir cualquier parte del nombre para mostrar del clúster para filtrar la lista de clústeres disponibles.

  5. 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 --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 proyecto

  1. Inicie PyCharm.
  2. En el menú principal, haga clic en Archivo > Nuevo proyecto.
  3. En el cuadro de diálogoNuevo proyecto, haga clic en Pure Python.
  4. En Ubicación, haga clic en el icono de carpeta y complete las instrucciones en pantalla para especificar la ruta de acceso al nuevo proyecto de Python.
  5. Deje crear un script de bienvenida de main.py seleccionado.
  6. En Tipo de intérprete, haga clic en Proyecto venv.
  7. Expanda Versión de Python, y use el icono de carpeta o la lista desplegable para especificar la ruta de acceso al intérprete de Python de los requisitos anteriores.
  8. Haga clic en Crear.

Creación del proyecto PyCharm

Paso 3: Agregar el paquete de Databricks Connect

  1. En el menú principal de PyCharm, haga clic en Ver > Herramienta de Windows > Paquetes de Python.
  2. En el cuadro de búsqueda, escriba databricks-connect.
  3. En la lista repositorio de PyPI, haga clic en databricks-connect.
  4. En la lista desplegable más reciente del panel de resultados, seleccione la versión que coincida con la versión de Databricks Runtime del clúster. Por ejemplo, si el clúster tiene instalado Databricks Runtime 14.3, seleccione 14.3.1.
  5. Haga clic en Instalar paquete.
  6. Una vez instalado el paquete, puede cerrar la ventana Paquetes de Python.

Instale el paquete de Databricks Connect

Paso 4: Agregar código

  1. En la ventana de herramientas Proyecto, haga clic con el botón derecho en la carpeta raíz del proyecto y, a continuación, haga clic en nuevo archivo Python >.

  2. Escriba main.py y haga doble clic en archivo de Python.

  3. Escriba el código siguiente en el archivo y, a continuación, guarde el archivo, en función del nombre del perfil de configuración.

    Si el perfil de configuración del paso 1 se denomina DEFAULT, escriba el código siguiente en el archivo y guarde el archivo:

    from databricks.connect import DatabricksSession
    
    spark = DatabricksSession.builder.getOrCreate()
    
    df = spark.read.table("samples.nyctaxi.trips")
    df.show(5)
    

    Si el perfil de configuración del paso 1 no se denomina DEFAULT, escriba el código siguiente en el archivo en su lugar. Reemplace el marcador de posición <profile-name> por el nombre del perfil de configuración del paso 1 y guarde el archivo:

    from databricks.connect import DatabricksSession
    
    spark = DatabricksSession.builder.profile("<profile-name>").getOrCreate()
    
    df = spark.read.table("samples.nyctaxi.trips")
    df.show(5)
    

Paso 5: ejecutar el código

  1. Inicie el clúster de destino en el área de trabajo remota de Azure Databricks.
  2. Una vez iniciado el clúster, en el menú principal, haga clic en Ejecutar > Ejecutar "main".
  3. En la ventana de herramientas de Ejecutar (Ver > Herramientas Windows > Ejecutar), en la pestaña deEjecutar, en el panel principal, aparecen las primeras 5 filas del samples.nyctaxi.trips.

Paso 6: Depurar el código

  1. Con el clúster en ejecución, en el código anterior, haga clic en el margen junto a df.show(5) para establecer un punto de interrupción.
  2. En el menú principal, haga clic en Ejecutar > Depurar "main".
  3. En la ventana de herramientas Debug (Ver > Herramienta de Windows > Debug), en el panel Variables de la pestaña Depurador, expanda los nodos de variables df y spark para examinar la información sobre el código de las variables df y spark.
  4. En la barra lateral de la ventana de la herramienta Depurar, haga clic en el icono de flecha verde (Reanudar programa).
  5. En el panel Consola de la pestaña Depurador, aparecen las cinco primeras filas de samples.nyctaxi.trips.

Depuración del proyecto PyCharm

Pasos siguientes

Para obtener más información sobre Databricks Connect, consulte los artículos siguientes: