Dela via


Felsöka Databricks Connect för Python

Kommentar

Den här artikeln beskriver Databricks Connect för Databricks Runtime 13.3 LTS och senare.

Den här artikeln innehåller felsökningsinformation för Databricks Connect för Python. Med Databricks Connect kan du ansluta populära IDE:er, notebook-servrar och anpassade program till Azure Databricks-kluster. Se Vad är Databricks Connect?. Scala-versionen av den här artikeln finns i Felsöka Databricks Connect för Scala.

Fel: StatusCode.UNAVAILABLE, StatusCode.UNKNOWN, DNS-matchning misslyckades eller Http2-huvud med status 500

Problem: När du försöker köra kod med Databricks Connect får du ett felmeddelande som innehåller strängar som StatusCode.UNAVAILABLE, StatusCode.UNKNOWN, DNS resolution failedeller Received http2 header with status: 500.

Möjlig orsak: Databricks Connect kan inte nå klustret.

Rekommenderade lösningar:

  • Kontrollera att namnet på arbetsytans instans är korrekt. Om du använder miljövariabler kontrollerar du att den relaterade miljövariabeln är tillgänglig och korrekt på den lokala utvecklingsdatorn.
  • Kontrollera att ditt kluster-ID är korrekt. Om du använder miljövariabler kontrollerar du att den relaterade miljövariabeln är tillgänglig och korrekt på den lokala utvecklingsdatorn.
  • Kontrollera att klustret har rätt anpassad klusterversion som är kompatibel med Databricks Connect.

Python-versionen stämmer inte

Kontrollera att den Python-version som du använder lokalt har minst samma delversion som versionen i klustret (till exempel 3.10.11 jämfört med 3.10.10 är OK, 3.10 jämfört med 3.9 inte).

Om du har flera Python-versioner installerade lokalt kontrollerar du att Databricks Connect använder rätt genom att ange PYSPARK_PYTHON miljövariabeln (till exempel PYSPARK_PYTHON=python3).

PySpark-installationer i konflikt

Paketet databricks-connect står i konflikt med PySpark. Om båda har installerats uppstår fel när Spark-kontexten initieras i Python. Detta kan manifesteras på flera sätt, till exempel "strömma skadade" eller "klassen hittades inte"-fel. Om du har PySpark installerat i Python-miljön kontrollerar du att det avinstalleras innan du installerar databricks-connect. När du har avinstallerat PySpark måste du installera om Databricks Connect-paketet helt:

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

Motstridiga eller saknade PATH poster för binärfiler

Det är möjligt att din PATH är konfigurerad så att kommandon som spark-shell kommer att köra någon annan tidigare installerad binär fil i stället för den som tillhandahålls med Databricks Connect. Du bör se till att databricks Connect-binärfilerna har företräde eller ta bort de tidigare installerade binärfilerna.

Om du inte kan köra kommandon som spark-shell, är det också möjligt att din PATH inte har konfigurerats automatiskt av pip3 install och du måste lägga till installationsdir bin till din PATH manuellt. Det går att använda Databricks Connect med ID:er även om detta inte har konfigurerats.

Syntaxen för filnamn, katalognamn eller volymetikett är felaktig i Windows

Om du använder Databricks Connect i Windows och ser:

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

Databricks Connect installerades i en katalog med ett utrymme i sökvägen. Du kan kringgå detta genom att antingen installera i en katalogsökväg utan blanksteg eller konfigurera sökvägen med hjälp av det korta namnformuläret.