Jegyzet
Az oldalhoz való hozzáférés engedélyezést igényel. Próbálhatod be jelentkezni vagy könyvtárat váltani.
Az oldalhoz való hozzáférés engedélyezést igényel. Megpróbálhatod a könyvtár váltását.
Feljegyzés
Ez a cikk a Databricks Runtime 13.3 LTS-hez készült Databricks Connectet ismerteti.
Ez a cikk a Pythonhoz készült Databricks Connect hibaelhárítási információit ismerteti. A Databricks Connect lehetővé teszi népszerű IDE-k, notebook-kiszolgálók és saját alkalmazások csatlakoztatását az Azure Databricks-fürtökhöz. Lásd : Mi az a Databricks Connect?. A cikk Scala-verziójával kapcsolatban lásd a Scalához készült Databricks Connect hibaelhárítását.
Hiba: StatusCode.UNAVAILABLE, StatusCode.UNKNOWN, DNS-feloldás nem sikerült, vagy 500-os állapotú HTTP2-fejléc érkezett
Probléma: Amikor a Databricks Connecttel próbál kódot futtatni, hibaüzenet jelenik meg, amely sztringeket tartalmaz, például StatusCode.UNAVAILABLE, StatusCode.UNKNOWN, DNS resolution failedvagy Received http2 header with status: 500.
Lehetséges ok: A Databricks Connect nem éri el a fürtöt (cluster).
Ajánlott megoldások:
- Ellenőrizze, hogy helyes-e a munkaterület példány neve. Ha környezeti változókat használ, ellenőrizze, hogy a kapcsolódó környezeti változó elérhető-e, és helyes-e a helyi fejlesztőgépen.
- Ellenőrizze, hogy a klaszterazonosító helyes-e. Ha környezeti változókat használ, ellenőrizze, hogy a kapcsolódó környezeti változó elérhető-e, és helyes-e a helyi fejlesztőgépen.
- Ellenőrizze, hogy a fürt rendelkezik-e a Databricks Connecttel kompatibilis egyéni fürtverzióval.
Python-verzióeltérés
Ellenőrizze, hogy a helyileg használt Python-verzió alverziója legalább ugyanaz-e, mint a fürtön lévő verzió (3.10.11 szemben 3.10.10 rendben van, 3.10 szemben 3.9 viszont nem). A támogatott verziókért tekintse meg a verziótámogatási mátrixot.
Ha több Python-verzió van telepítve helyileg, győződjön meg arról, hogy a Databricks Connect a megfelelőt használja a PYSPARK_PYTHON környezeti változó beállításával (például PYSPARK_PYTHON=python3).
Ütköző PySpark-telepítések
A databricks-connect csomag ütközik a PySparkkal. Ha mindkettő telepítve van, az hibát fog okozni a Spark-környezet Pythonban való inicializálása során. Ez többféleképpen is nyilvánulhat meg, beleértve a "sérült stream" vagy a "nem található osztály" hibákat. Mielőtt telepítené a(z) pyspark-t, győződjön meg arról, hogy a(z) databricks-connect nincs telepítve a Python-környezetben. A PySpark eltávolítása után mindenképpen telepítse újra a Databricks Connect csomagot:
pip3 uninstall pyspark
pip3 uninstall databricks-connect
pip3 install --upgrade "databricks-connect==14.0.*" # or X.Y.* to match your specific cluster version.
A Databricks Connect és a PySpark kölcsönösen kizárják egymást, de a Python virtuális környezetek használatával távoli fejlesztéseket databricks-connect hajthat végre az IDE-ben, és helyi tesztelést pyspark hajthat végre egy terminálon. A Databricks azonban azt javasolja, hogy a Databricks Connect for Pythont kiszolgáló nélküli számítással használja az összes teszteléshez, az alábbi okokból:
- A Databricks Runtime tehát
databricks-connectolyan funkciókat tartalmaz, amelyek nem érhetők el az OSS-benpyspark. - A
databricks-connectés a kiszolgáló nélküli tesztelés gyorsabb, mint apysparkhelyi tesztelés. - A Unity Catalog-integrációk nem érhetők el
pyspark, ezért a helyi teszteléspysparksorán nem lesznek érvényes engedélyek. - Az olyan külső függőségekkel, mint a Databricks compute, a végpontok közötti teszteléshez az integrációs tesztek az egységtesztekkel szemben a legjobbak.
Ha továbbra is úgy dönt, hogy helyi Spark-fürthöz csatlakozik, megadhat egy kapcsolati karakterláncot a következő módon:
connection_string = "sc://localhost"
DatabricksSession.builder.remote(connection_string).getOrCreate()
Ütköző vagy hiányzó PATH bejegyzés bináris fájlokhoz
Lehetséges, hogy a PATH úgy van konfigurálva, hogy a databricks Connect által biztosított helyett a hasonló spark-shell parancsok más, korábban telepített bináris fájlokat futtassanak. Győződjön meg arról, hogy a Databricks Connect bináris fájljai elsőbbséget élveznek, vagy eltávolítják a korábban telepített fájlokat.
Ha nem tud például spark-shell parancsokat futtatni, az is lehetséges, hogy a PATH nem lett automatikusan beállítva a pip3 install által, és manuálisan kell hozzáadnia a telepítési bin könyvtárat a PATH-hoz. A Databricks Connectet akkor is használhatja IDE-kkel, ha az nincs konfigurálva.
A fájlnév, a könyvtárnév vagy a kötetcímke szintaxisa helytelen a Windowsban
Ha Windows rendszeren használja a Databricks Connectet, és tekintse meg a következőt:
The filename, directory name, or volume label syntax is incorrect.
A Databricks Connect egy könyvtárba lett telepítve, amelyen egy szóköz van az elérési úton. Ezt úgy teheti meg, hogy szóközök nélkül telepíti a címtár elérési útját, vagy konfigurálja az elérési utat a rövid névűrlap használatával.