Condividi tramite


Risoluzione dei problemi di Databricks Connect per Python

Nota

Questo articolo illustra Databricks Connect per Databricks Runtime 13.3 LTS e versioni successive.

Questo articolo fornisce informazioni sulla risoluzione dei problemi per Databricks Connect per Python. Databricks Connect consente di connettere gli IDE, i server notebook e le applicazioni personalizzate più diffusi ai cluster Azure Databricks. Vedere Che cos'è Databricks Connect?. Per la versione scala di questo articolo, vedere Risoluzione dei problemi di Databricks Connect per Scala.

Errore: StatusCode.UNAVAILABLE, StatusCode.UNKNOWN, risoluzione DNS non riuscita o Intestazione http2 ricevuta con stato 500

Problema: quando si tenta di eseguire il codice con Databricks Connect, viene visualizzato un messaggio di errore che contiene stringhe come StatusCode.UNAVAILABLE, StatusCode.UNKNOWN, DNS resolution failedo Received http2 header with status: 500.

Possibile causa: Databricks Connect non riesce a raggiungere il cluster.

Soluzioni consigliate:

  • Verificare che il nome dell'istanza dell'area di lavoro sia corretto. Se si usano variabili di ambiente, verificare che la variabile di ambiente correlata sia disponibile e corretta nel computer di sviluppo locale.
  • Verificare che l'ID cluster sia corretto. Se si usano variabili di ambiente, verificare che la variabile di ambiente correlata sia disponibile e corretta nel computer di sviluppo locale.
  • Verificare che il cluster disponga della versione corretta del cluster personalizzato compatibile con Databricks Connect.

Versione di Python non corrispondente

Controllare che la versione di Python in uso in locale abbia almeno la stessa versione secondaria della versione nel cluster( ad esempio, 3.10.11 rispetto 3.10.10 3.9 a OK o 3.10 no).

Se sono installate più versioni di Python in locale, assicurarsi che Databricks Connect usi quello corretto impostando la PYSPARK_PYTHON variabile di ambiente , ad esempio PYSPARK_PYTHON=python3.

Installazioni di PySpark in conflitto

Il databricks-connect pacchetto è in conflitto con PySpark. L'installazione di entrambi causerà errori durante l'inizializzazione del contesto Spark in Python. Questo può manifestarsi in diversi modi, tra cui errori di "flusso danneggiato" o "classe non trovata". Se PySpark è installato nell'ambiente Python, assicurarsi che sia disinstallato prima di installare databricks-connect. Dopo aver disinstallato PySpark, assicurarsi di reinstallare completamente il pacchetto 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.

Voce in conflitto o mancante PATH per i file binari

È possibile configurare PATH in modo che i comandi come spark-shell verranno eseguiti altri file binari installati in precedenza anziché quello fornito con Databricks Connect. È necessario assicurarsi che i file binari di Databricks Connect abbia la precedenza o rimuovere quelli installati in precedenza.

Se non è possibile eseguire comandi come spark-shell, è anche possibile che PATH non sia stato configurato automaticamente da pip3 install e sarà necessario aggiungere manualmente il dir di installazione bin al percorso. È possibile usare Databricks Connect con gli IDE anche se non è configurato.

La sintassi del nome file, del nome della directory o dell'etichetta del volume non è corretta in Windows

Se si usa Databricks Connect in Windows e vedere:

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

Databricks Connect è stato installato in una directory con uno spazio nel percorso. È possibile risolvere questo problema installando in un percorso di directory senza spazi o configurando il percorso usando il modulo nome breve.