Executar e depurar células do Notebook com Databricks Connect usando a extensão Databricks para Visual Studio Code
O senhor pode executar e depurar o Notebook, uma célula de cada vez ou todas as células de uma vez, e ver os resultados na interface do usuário do Visual Studio Code usando a extensão Databricks para integração com o Visual Studio Code Databricks Connect. Todos os códigos são executados localmente, enquanto todos os códigos que envolvem DataFrame operações são executados no cluster no Databricks remoto workspace e as respostas de execução são enviadas de volta ao chamador local. Todo o código é depurado localmente, enquanto todo o código Spark continua a ser executado no cluster no Databricks remoto workspace. O código principal do mecanismo do Spark não pode ser depurado diretamente do cliente.
Observação
Esse recurso funciona com Databricks Runtime 13.3 e acima.
Para ativar a integração do Databricks Connect para o Notebook na extensão Databricks para o Visual Studio Code, o senhor deve instalar o Databricks Connect na extensão Databricks para o Visual Studio Code. Consulte Depurar código usando o Databricks Connect para a extensão Databricks para Visual Studio Code.
execução Python Células de notebook
Para o Notebook com nomes de arquivos que têm uma extensão .py
, quando o senhor abre o Notebook no IDE do Visual Studio Code, cada célula exibe os botões Executar célula, Executar acima e Depurar célula. À medida que o senhor executa uma célula, seus resultados são mostrados em um tab separado no IDE. À medida que o senhor depura, a célula que está sendo depurada exibe os botões Continue, Stop e o passo Over. Ao depurar uma célula, o senhor pode usar o recurso de depuração do Visual Studio Code, como observar os estados das variáveis e visualizar a pilha de chamadas e o console de depuração.
Para o Notebook com nomes de arquivos que têm uma extensão .ipynb
, quando o senhor abre o Notebook no IDE do Visual Studio Code, o Notebook e suas células contêm recurso adicional. Consulte Células em execução e Trabalhar com células de código no Notebook Editor.
Para obter mais informações sobre os formatos do Notebook para nomes de arquivos com as extensões .py
e .ipynb
, consulte Exportar e importar Databricks Notebook.
execução Python Jupyter noteboook cells
Para executar ou depurar um Python Jupyter Notebook (.ipynb
):
Em seu projeto, abra o Python Jupyter Notebook que deseja executar ou depurar. Certifique-se de que o arquivo Python esteja no formato Jupyter Notebook e tenha a extensão
.ipynb
.Dica
O senhor pode criar um novo Python Jupyter Notebook executando o comando >Create: New Jupyter Notebook comando a partir da paleta de comandos.
Clique em Execute All Cells para executar todas as células sem depuração, Execute Cell para executar uma célula individual correspondente sem depuração ou Execute by Line para executar uma célula individual linha a linha com depuração limitada, com valores variáveis exibidos no painel Jupyter(view > Open view > Jupyter).
Para depuração completa em uma célula individual, defina pontos de interrupção e clique em Debug Cell no menu ao lado do botão de execução da célula.
Depois de clicar em qualquer uma dessas opções, talvez seja solicitado que o senhor instale as dependências do pacote Python Jupyter Notebook que estão faltando. Clique para instalar.
Para obter mais informações, consulte Jupyter Notebook in VS Code.
Notebook globals
Os seguintes globais do Notebook também estão ativados:
spark
que representa uma instância dedatabricks.connect.DatabricksSession
, é pré-configurado para instanciarDatabricksSession
obtendo as credenciais de autenticação do Databricks da extensão. SeDatabricksSession
já estiver instanciado no código de uma célula do Notebook, essas configuraçõesDatabricksSession
serão usadas em seu lugar. Consulte Exemplos de código para o Databricks Connect para Python.udf
, pré-configurado como um alias parapyspark.sql.functions.udf
, que é um alias para UDFs do Python. Consulte PySpark.sql.functions.udf.sql
, pré-configurado como um alias paraspark.sql
.spark
, conforme descrito anteriormente, representa uma instância pré-configurada dedatabricks.connect.DatabricksSession
. Consulte Spark SQL.dbutils
, pré-configurado como uma instância de Databricks utilidades, que é importado dedatabricks-sdk
e é instanciado pela obtenção de credenciais de autenticação Databricks da extensão. Consulte Use Databricks utilidades.Observação
Apenas um subconjunto de Databricks utilidades é compatível com o Notebook com Databricks Connect.
Para ativar
dbutils.widgets
, o senhor deve primeiro instalar o Databricks SDK for Python executando o seguinte comando no terminal da máquina de desenvolvimento local:pip install 'databricks-sdk[notebook]'
display
, pré-configurado como um alias para o Jupyter embutidoIPython.display.display
. Consulte IPython.display.display.displayHTML
, pré-configurado como um alias paradbruntime.display.displayHTML
, que é um alias paradisplay.HTML
deipython
. Consulte IPython.display.html.
Notebook mágica
As seguintes mágicas do Notebook também estão ativadas:
%fs
, que é o mesmo que fazer chamadasdbutils.fs
. Consulte Misturar idiomas.%sh
que executa um comando usando a magia de célula%%script
na máquina local. Isso não executa o comando no site remoto Databricks workspace. Consulte Misturar idiomas.%md
e%md-sandbox
, que executam a mágica da célula%%markdown
. Consulte Misturar idiomas.%sql
, que executaspark.sql
. Consulte Misturar idiomas.%pip
, que executapip install
no computador local. Isso não executapip install
no site remoto Databricks workspace. Veja gerenciar biblioteca com %pip comando.%run
O senhor pode usar o Notebook, que executa outro Notebook. Veja a execução de Databricks Notebook a partir de outro Notebook.Observação
Para ativar
%run
, o senhor deve primeiro instalar a biblioteca nbformat executando o seguinte comando no terminal do computador de desenvolvimento local:pip install nbformat
Os recursos adicionais habilitados incluem:
Spark DataFrames são convertidos para Pandas DataFrames, que são exibidos no formato de tabela do Jupyter.
Limitações
As limitações da execução de células no Notebook no Visual Studio Code incluem:
As mágicas
%r
e%scala
do Notebook não são compatíveis e exibem um erro se forem chamadas. Consulte Misturar idiomas.A magia
%sql
do Notebook não é compatível com alguns comandos DML, como Show Tables.