Ejecución y depuración de celdas de cuaderno mediante Databricks Connect para la extensión de Databricks para Visual Studio Code
Puede ejecutar y depurar cuadernos, una celda a la vez o todas las celdas a la vez, y ver los resultados en la UI de Visual Studio Code mediante la integración de Databricks Connect en la extensión de Databricks Connect 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. 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.
Nota:
Esta característica funciona con Databricks Runtime 13.3 y versiones posteriores.
Para habilitar la integración de Databricks Connect para cuadernos en la extensión de Databricks para Visual Studio Code, debe instalar Databricks Connect en la extensión de Databricks para Visual Studio Code. Vea Depuración de código mediante Databricks Connect para la extensión de Databricks para Visual Studio Code.
Ejecución de celdas de cuaderno de Python
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.
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.
Ejecución de celdas de Jupyter Notebook de Python
Para ejecutar o depurar un cuaderno de Jupyter Notebook de Python (.ipynb
):
En el proyecto, abra el cuaderno de Python Jupyter Notebook que quiere ejecutar o depurar. Asegúrese de que el archivo de Python está en formato de cuaderno de Jupyter Notebook y tiene la extensión
.ipynb
.Sugerencia
Puede crear un nuevo cuaderno de Jupyter Notebook de Python ejecutando el comando >Crear: Nuevo Jupyter Notebook desde la Paleta de comandos.
Haga clic en Ejecutar todas las celdas para ejecutar todas las celdas sin depurar, Ejecutar celda para ejecutar una celda correspondiente individual sin depurar o Ejecutar por línea para ejecutar una celda individual línea a línea con depuración limitada, con valores variables mostrados en el panel Jupyter (Ver > Abrir vista > Jupyter).
Para la depuración completa dentro de una celda individual, establezca puntos de interrupción y, a continuación, haga clic en Depurar celda en el menú situado junto al botón Ejecutar de la celda.
Después de hacer clic en cualquiera de estas opciones, es posible que se le pida que instale las dependencias del paquete de Jupyter Notebook de Python que faltan. Haga clic para instalarla.
Para más información, consulte Jupyter Notebooks en VS Code.
Variables globales de cuadernos
También se habilitan los siguientes aspectos globales del cuaderno:
spark
, que representa una instancia dedatabricks.connect.DatabricksSession
, está preconfigurada para crear instancias deDatabricksSession
mediante la obtención de credenciales de autenticación de Azure Databricks de la extensión. SiDatabricksSession
ya se ha instanciado en el código de una celda del cuaderno, esta configuración deDatabricksSession
se usa en su lugar. Consulte Ejemplos de código para Databricks Connect para Python.udf
, preconfigurado como alias parapyspark.sql.functions.udf
, que es un alias para las UDF de Python. Consulte pyspark.sql.functions.udf.sql
, preconfigurado como alias paraspark.sql
.spark
, tal y como se ha descrito anteriormente, representa una instancia preconfigurada dedatabricks.connect.DatabricksSession
. Consulte Spark SQL.dbutils
, preconfigurado como una instancia de utilidades de Databricks, que se importa desdedatabricks-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 JupyterIPython.display.display
. Consulte IPython.display.display.displayHTML
, preconfigurado como alias paradbruntime.display.displayHTML
, que es un alias paradisplay.HTML
deipython
. Consulte IPython.display.html.
Comandos mágicos de cuadernos
Los siguientes cuadernos mágicos también están habilitados:
%fs
, que es igual que realizar llamadasdbutils.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 ejecutaspark.sql
. Consulte Combinación de lenguajes.%pip
, que ejecutapip install
en el equipo local. Esto no ejecutapip install
en el área de trabajo de Azure Databricks remota. Consulte Administrar bibliotecas con comandos %pip.%run
, que ejecuta otro cuaderno. 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
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.
Limitaciones
Entre las limitaciones de ejecución de celdas en cuadernos de Visual Studio Code se incluyen las siguientes:
- 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.