Solução de problemas do Databricks Connect for Python

Nota

Este artigo aborda o Databricks Connect for Databricks Runtime 13.3 LTS e superior.

Este artigo fornece informações de solução de problemas para o Databricks Connect for Python. O Databricks Connect permite conectar IDEs populares, servidores de notebook e aplicativos personalizados a clusters do Azure Databricks. Consulte O que é Databricks Connect?. Para a versão Scala deste artigo, consulte Solução de problemas do Databricks Connect for Scala.

Erro: StatusCode.UNAVAILABLE, StatusCode.UNKNOWN, falha na resolução DNS ou cabeçalho http2 recebido com status 500

Problema: quando você tenta executar código com o Databricks Connect, recebe uma mensagem de erro que contém cadeias de caracteres como StatusCode.UNAVAILABLE, StatusCode.UNKNOWN, DNS resolution failedou Received http2 header with status: 500.

Possível causa: o Databricks Connect não consegue alcançar o cluster.

Soluções recomendadas:

  • Verifique se o nome da instância do espaço de trabalho está correto. Se você usar variáveis de ambiente, verifique se a variável de ambiente relacionada está disponível e correta em sua máquina de desenvolvimento local.
  • Verifique se o ID do cluster está correto. Se você usar variáveis de ambiente, verifique se a variável de ambiente relacionada está disponível e correta em sua máquina de desenvolvimento local.
  • Verifique se o cluster tem a versão personalizada correta do cluster compatível com o Databricks Connect.

Erro de correspondência de versão do Python

Verifique se a versão do Python que você está usando localmente tem pelo menos a mesma versão secundária que a versão no cluster (por exemplo, 3.10.11 versus 3.10.10 é OK, 3.10 versus 3.9 não é).

Se você tiver várias versões do Python instaladas localmente, certifique-se de que o Databricks Connect esteja usando a correta, definindo a PYSPARK_PYTHON variável de ambiente (por exemplo, PYSPARK_PYTHON=python3).

Instalações PySpark em conflito

O pacote entra em conflito com o databricks-connect PySpark. Ter ambos instalados causará erros ao inicializar o contexto do Spark em Python. Isso pode se manifestar de várias maneiras, incluindo erros de "fluxo corrompido" ou "classe não encontrada". Se você tiver o PySpark instalado em seu ambiente Python, certifique-se de que ele seja desinstalado antes de instalar o databricks-connect. Depois de desinstalar o PySpark, certifique-se de reinstalar totalmente o pacote Databricks Connect:

pip3 uninstall pyspark
pip3 uninstall databricks-connect
pip3 install --upgrade "databricks-connect==14.0.*"  # or X.Y.* to match your specific cluster version.

Entrada conflitante ou ausente PATH para binários

É possível que seu PATH esteja configurado para que comandos como spark-shell estarão executando algum outro binário instalado anteriormente em vez daquele fornecido com o Databricks Connect. Certifique-se de que os binários do Databricks Connect tenham precedência ou remova os instalados anteriormente.

Se você não pode executar comandos como spark-shell, também é possível que seu PATH não tenha sido configurado automaticamente e pip3 install você precisará adicionar o dir de instalação bin ao seu PATH manualmente. É possível usar o Databricks Connect com IDEs mesmo que isso não esteja configurado.

O nome do arquivo, nome do diretório ou sintaxe do rótulo do volume está incorreto no Windows

Se você estiver usando o Databricks Connect no Windows e veja:

The filename, directory name, or volume label syntax is incorrect.

O Databricks Connect foi instalado em um diretório com um espaço no caminho. Você pode contornar isso instalando em um caminho de diretório sem espaços ou configurando seu caminho usando o formulário de nome curto.