Compartir a través de


Usar cuadernos con Databricks Connect

Nota:

Esta característica funciona con Databricks Runtime 13.3 y versiones posteriores.

Puede ejecutar cuadernos de Azure Databricks y ver sus resultados en el IDE de Visual Studio Code, una celda a la vez o todas las celdas a la vez, mediante la integración de Databricks Connect en la extensión de Databricks para Visual Studio Code. Todo el código se ejecuta localmente, mientras que todo el código que implique operaciones DataFrame se ejecuta en el clúster en el área de trabajo remota de Azure Databricks y las respuestas de ejecución se envían de vuelta al autor de la llamada local. También puede depurar celdas. Todo el código se depura localmente, mientras que todo el código de Spark continúa ejecutándose en el clúster en el área de trabajo remota de Azure Databricks. El código principal del motor de Spark no se puede depurar directamente desde el cliente.

De manera predeterminada, sin la integración de Databricks Connect que se describe en este artículo, el uso de cuadernos es limitado:

  • No puede ejecutar cuadernos de una celda a la vez mediante solo la extensión de Databricks para Visual Studio Code.
  • No puede depurar celdas.
  • Solo puede ejecutar cuadernos como trabajos de Azure Databricks y ver solo los resultados de la ejecución de los cuadernos en el IDE de Visual Studio Code.
  • Todo el código del cuaderno solo se ejecuta en los clústeres asociados a estos trabajos.

Para habilitar la integración de Databricks Connect para cuadernos en la extensión de Databricks para Visual Studio Code, debe habilitar la integración de Databricks Connect en la extensión de Databricks para Visual Studio Code. Consulte Depuración de código mediante Databricks Connect para la extensión de Databricks para Visual Studio Code.

Después de la habilitación, para los cuadernos con nombres de archivo que tienen una extensión .py, al abrir el cuaderno en el IDE de Visual Studio Code, cada celda muestra los botones Ejecutar celda, Ejecutar arriba y Depurar celda. Al ejecutar una celda, sus resultados se muestran en una pestaña independiente del IDE. A medida que se depura, la celda que se depura muestra los botones Continuar, Detener y Paso a paso. A medida que depura una celda, puede usar características de depuración de Visual Studio Code, como ver los estados de las variables y ver la pila de llamadas y la consola de depuración.

Después de la habilitación, para los cuadernos con nombres de archivo que tienen una extensión .ipynb, al abrir el cuaderno en el IDE de Visual Studio Code, el cuaderno y sus celdas contienen características adicionales. Consulte Ejecutar celdas y Trabajar con celdas de código en el editor de cuadernos.

Para obtener más información sobre los formatos de cuaderno para nombres de archivo con las extensiones .py y .ipynb, consulte Exportar e importar cuadernos de Databricks.

También se habilitan los siguientes aspectos globales del cuaderno:

  • spark, que representa una instancia de databricks.connect.DatabricksSession, está preconfigurada para crear instancias de DatabricksSession mediante la obtención de credenciales de autenticación de Azure Databricks de la extensión. Si DatabricksSession ya se ha instanciado en el código de una celda del cuaderno, esta configuración de DatabricksSession se usa en su lugar. Consulte Ejemplos de código para Databricks Connect para Python.

  • udf, preconfigurado como alias para pyspark.sql.functions.udf, que es un alias para las UDF de Python. Consulte pyspark.sql.functions.udf.

  • sql, preconfigurado como alias para spark.sql. spark, tal y como se ha descrito anteriormente, representa una instancia preconfigurada de databricks.connect.DatabricksSession. Consulte Spark SQL.

  • dbutils, preconfigurado como una instancia de utilidades de Databricks, que se importa desde databricks-sdk y del que se crea una instancia mediante la obtención de credenciales de autenticación de Azure Databricks de la extensión. Consulte Uso de utilidades de Databricks.

    Nota:

    Solo se admite un subconjunto de utilidades de Databricks para cuadernos con Databricks Connect.

    Para habilitar dbutils.widgets, primero hay que instalar el SDK de Databricks para Python, para lo que se debe ejecutar el siguiente comando en el terminal de la máquina de desarrollo local:

    pip install 'databricks-sdk[notebook]'
    
  • display, preconfigurado como alias para la integración de Jupyter IPython.display.display. Consulte IPython.display.display.

  • displayHTML, preconfigurado como alias para dbruntime.display.displayHTML, que es un alias para display.HTML de ipython. Consulte IPython.display.html.

Los siguientes cuadernos mágicos también están habilitados:

  • %fs, que es igual que realizar llamadas dbutils.fs. Consulte Combinación de lenguajes.

  • %sh, que ejecuta un comando mediante la instrucción mágica %%script de celdas en el equipo local. Esto no ejecuta el comando en el área de trabajo remota de Azure Databricks. Consulte Combinación de lenguajes.

  • %md y %md-sandbox, que ejecuta la instrucción mágica %%markdown de celda. Consulte Combinación de lenguajes.

  • %sql, que ejecuta spark.sql. Consulte Combinación de lenguajes.

  • %pip, que ejecuta pip install en el equipo local. Esto no ejecuta pip install en el área de trabajo de Azure Databricks remota. Consulte Administrar bibliotecas con comandos %pip.

  • %run, que ejecuta otro cuaderno. Este cuaderno mágico está disponible en la extensión de Databricks para Visual Studio Code versión 1.1.2 y posteriores. Consulte Ejecutar un cuaderno de Databricks desde otro cuaderno.

    Nota:

    Para habilitar %run, primero debe instalar la biblioteca de nbformat ejecutando el siguiente comando en el terminal del equipo de desarrollo local:

    pip install nbformat
    
  • # MAGIC. Este cuaderno mágico está disponible en la extensión de Databricks para Visual Studio Code versión 1.1.2 y posteriores.

Entre las características adicionales que están habilitadas se incluyen:

  • Los DataFrames de Spark se convierten en DataFrames de Pandas, que se muestran en formato de tabla de Jupyter.

Entre estas limitaciones se incluyen:

  • Las instrucciones mágicas de los cuadernos %r y %scala no se admiten y se muestra un error si se llaman. Consulte Combinación de lenguajes.
  • La instrucción mágica del cuaderno %sql no admite algunos comandos DML, como Mostrar tablas.