Databricks Connect a Scalához
Feljegyzés
Ez a cikk a Databricks Runtime 13.3 LTS-hez készült Databricks Connectet ismerteti.
Ez a cikk bemutatja, hogyan kezdheti el gyorsan a Databricks Connect használatát a Scala és az IntelliJ IDEA és a Scala beépülő modul használatával.
- A cikk Python-verziójával kapcsolatban lásd : Databricks Connect for Python.
- A cikk R-verziójával kapcsolatban lásd : Databricks Connect for R.
A Databricks Connect lehetővé teszi népszerű azonosítók, például az IntelliJ IDEA, a notebook-kiszolgálók és más egyéni alkalmazások Azure Databricks-fürtökhöz való csatlakoztatását. Lásd : Mi az a Databricks Connect?.
Oktatóanyag
Ha ki szeretné hagyni ezt az oktatóanyagot, és ehelyett egy másik IDE-t szeretne használni, tekintse meg a következő lépéseket.
Követelmények
Az oktatóanyag elvégzéséhez meg kell felelnie a következő követelményeknek:
A cél Azure Databricks-munkaterületnek és -fürtnek meg kell felelnie a Databricks Connect fürtkonfigurációjának követelményeinek.
A fürtazonosítónak elérhetőnek kell lennie. A fürtazonosító lekéréséhez a munkaterületen kattintson a Számítás gombra az oldalsávon, majd kattintson a fürt nevére. A webböngésző címsorában másolja ki a karakterek sztringjét az URL-cím között
clusters
ésconfiguration
az URL-címben.A fejlesztői gépen telepítve van a Java Development Kit (JDK). A Databricks azt javasolja, hogy a JDK-telepítés használt verziója egyezzen az Azure Databricks-fürt JDK-verziójával. Az alábbi táblázat az egyes támogatott Databricks-futtatókörnyezetek JDK-verzióját mutatja be.
Databricks Runtime verzió JDK-verzió 13.3 LTS – 15.0,
13,3 ML LTS - 15,0 MLJDK 8 Feljegyzés
Ha nincs telepítve JDK, vagy ha több JDK-telepítés van a fejlesztői gépen, az 1. lépés későbbi részében telepítheti vagy kiválaszthatja az adott JDK-t. Ha olyan JDK-telepítést választ, amely a fürt JDK-verziója alatt vagy felett található, váratlan eredményeket eredményezhet, vagy előfordulhat, hogy a kód egyáltalán nem fut.
Telepítve van az IntelliJ IDEA . Ezt az oktatóanyagot az IntelliJ IDEA Community Edition 2023.3.6-os verziójával teszteltük. Ha az IntelliJ IDEA másik verzióját vagy kiadását használja, az alábbi utasítások eltérhetnek.
Telepítve van az IntelliJ IDEA Scala beépülő modulja .
1. lépés: Az Azure Databricks-hitelesítés konfigurálása
Ez az oktatóanyag az Azure Databricks OAuth felhasználói (U2M) hitelesítését és egy Azure Databricks-konfigurációs profilt használ az Azure Databricks-munkaterület hitelesítéséhez. Ha ehelyett más hitelesítési típust szeretne használni, olvassa el a Kapcsolat tulajdonságainak konfigurálása című témakört.
Az OAuth U2M-hitelesítés konfigurálásához a Databricks parancssori felületre van szükség az alábbiak szerint:
Ha még nincs telepítve, telepítse a Databricks parancssori felületét az alábbiak szerint:
Linux, macOS
A Következő két parancs futtatásával telepítse a Databricks parancssori felületet a Homebrew használatával:
brew tap databricks/tap brew install databricks
Windows
A Databricks parancssori felület telepítéséhez használhat winget, Chocolatey vagy Linuxos Windows-alrendszer (WSL). Ha a Chocolatey vagy a WSL nem használható
winget
, hagyja ki ezt az eljárást, és a parancssor vagy a PowerShell használatával telepítse a Databricks PARANCSSOR-t a forrásból .Feljegyzés
A Databricks CLI és a Chocolatey telepítése kísérleti.
winget
A Databricks parancssori felület telepítéséhez futtassa a következő két parancsot, majd indítsa újra a parancssort:winget search databricks winget install Databricks.DatabricksCLI
A Databricks parancssori felület telepítéséhez futtassa a következő parancsot a Chocolatey használatával:
choco install databricks-cli
A WSL használata a Databricks parancssori felület telepítéséhez:
Telepítse
curl
és telepítse azip
WSL-t. További információkért tekintse meg az operációs rendszer dokumentációját.A Következő parancs futtatásával telepítse a Databricks PARANCSSOR-t a WSL használatával:
curl -fsSL https://raw.githubusercontent.com/databricks/setup-cli/main/install.sh | sh
Ellenőrizze, hogy a Databricks parancssori felület telepítve van-e a következő parancs futtatásával, amely megjeleníti a telepített Databricks parancssori felület aktuális verzióját. Ennek a verziónak a 0.205.0-s vagy újabb verziónak kell lennie:
databricks -v
Feljegyzés
Ha futtat,
databricks
de hibaüzenetet kap, példáulcommand not found: databricks
, vagy ha futdatabricks -v
, és a 0.18-as vagy újabb verziószám jelenik meg, ez azt jelenti, hogy a gép nem találja a Databricks parancssori felületének megfelelő végrehajtható verzióját. A probléma megoldásához tekintse meg a parancssori felület telepítésének ellenőrzése című témakört.
OAuth U2M-hitelesítés kezdeményezése az alábbiak szerint:
Az OAuth-jogkivonatok helyi felügyeletének elindításához használja a Databricks parancssori felületét az alábbi parancs futtatásával minden cél-munkaterületen.
Az alábbi parancsban cserélje le
<workspace-url>
például az Azure Databricks munkaterületenkénti URL-címéthttps://adb-1234567890123456.7.azuredatabricks.net
.databricks auth login --configure-cluster --host <workspace-url>
A Databricks parancssori felülete kéri, hogy mentse az Azure Databricks konfigurációs profiljaként megadott adatokat. Nyomja le
Enter
a javasolt profilnevet, vagy adja meg egy új vagy meglévő profil nevét. Az azonos nevű meglévő profilokat felülírja a megadott adatokkal. Profilok használatával gyorsan válthat a hitelesítési környezetre több munkaterületen.A meglévő profilok listájának lekéréséhez egy külön terminálban vagy parancssorban futtassa a Parancsot
databricks auth profiles
a Databricks parancssori felületével. Egy adott profil meglévő beállításainak megtekintéséhez futtassa a parancsotdatabricks auth env --profile <profile-name>
.A webböngészőben végezze el a képernyőn megjelenő utasításokat az Azure Databricks-munkaterületre való bejelentkezéshez.
A terminálban vagy parancssorban megjelenő elérhető fürtök listájában a felfelé és lefelé mutató nyílbillentyűkkel válassza ki a munkaterületen a cél Azure Databricks-fürtöt, majd nyomja le
Enter
a billentyűt. A fürt megjelenítendő nevének bármely részét beírhatja az elérhető fürtök listájának szűréséhez.A profil aktuális OAuth-tokenértékének és a jogkivonat közelgő lejárati időbélyegének megtekintéséhez futtassa az alábbi parancsok egyikét:
databricks auth token --host <workspace-url>
databricks auth token -p <profile-name>
databricks auth token --host <workspace-url> -p <profile-name>
Ha több azonos értékű profillal rendelkezik
--host
, előfordulhat, hogy együtt kell megadnia azokat és-p
a--host
beállításokat, hogy a Databricks parancssori felülete megkeresse a megfelelő OAuth-jogkivonat-információkat.
2. lépés: A projekt létrehozása
Indítsa el az IntelliJ IDEA-t.
A főmenüben kattintson az Új > projekt fájlja elemre>.
Adjon egy értelmes nevet a projektnek.
A Hely beállításhoz kattintson a mappa ikonra, és végezze el a képernyőn megjelenő utasításokat az új Scala-projekt elérési útjának megadásához.
A Nyelv területen kattintson a Scala elemre.
Build rendszer esetén kattintson az sbt gombra.
A JDK legördülő listában válassza ki a JDK meglévő telepítését a fejlesztői gépen, amely megfelel a fürt JDK-verziójának, vagy válassza a JDK letöltése lehetőséget, és kövesse a képernyőn megjelenő utasításokat a fürt JDK-verziójának megfelelő JDK letöltéséhez.
Feljegyzés
Ha olyan JDK-telepítést választ, amely a fürt JDK-verziója felett vagy alatt található, váratlan eredményeket eredményezhet, vagy előfordulhat, hogy a kód egyáltalán nem fut.
Az sbt legördülő listában válassza ki a legújabb verziót.
A Scala legördülő listában válassza ki a Scala azon verzióját, amely megfelel a fürt Scala-verziójának. Az alábbi táblázat az egyes támogatott Databricks-futtatókörnyezetek Scala-verzióját mutatja be:
Databricks Runtime verzió Scala-verzió 13.3 LTS – 15.0,
13,3 ML LTS - 15,0 ML2.12.15 Feljegyzés
Ha olyan Scala-verziót választ, amely a fürt Scala-verziója alatt vagy felett van, az váratlan eredményeket eredményezhet, vagy előfordulhat, hogy a kód egyáltalán nem fut.
Győződjön meg arról, hogy a Scala melletti Források letöltése jelölőnégyzet be van jelölve.
Csomagelőtag esetén adjon meg egy csomagelőtag-értéket a projekt forrásaihoz, például
org.example.application
.Győződjön meg arról, hogy a Mintakód hozzáadása jelölőnégyzet be van jelölve.
Kattintson a Létrehozás gombra.
3. lépés: A Databricks Connect csomag hozzáadása
Ha meg van nyitva az új Scala-projekt, nyissa meg a Projekt eszköz ablakában (Windows Project megtekintése > >) a projektnév> célhelyen lévő, nevű
build.sbt
fájlt.Adja hozzá a következő kódot a
build.sbt
fájl végéhez, amely deklarálja a projekt függőségét a Scala Databricks Connect-kódtárának egy adott verziójától:libraryDependencies += "com.databricks" % "databricks-connect" % "14.3.1"
Cserélje le
14.3.1
a Databricks Connect-kódtár azon verzióját, amely megfelel a fürt Databricks Runtime-verziójának. A Databricks Connect-kódtár verziószámait a Maven központi adattárában találja.Kattintson a Load sbt changes notification icon(sbt) ikonra a Scala-projekt új erőforrástár helyével és függőségével való frissítéséhez.
Várjon, amíg az
sbt
IDE alján lévő állapotjelző eltűnik. Asbt
betöltési folyamat végrehajtása eltarthat néhány percig.
4. lépés: Kód hozzáadása
A Project eszközablakban nyissa meg a project-name> src > main > scala nevű fájlt
Main.scala
.Cserélje le a fájl meglévő kódját a következő kódra, majd mentse a fájlt a konfigurációs profil nevétől függően.
Ha az 1. lépésben megadott konfigurációs profil neve el van nevezve
DEFAULT
, cserélje le a fájlban lévő összes meglévő kódot a következő kódra, majd mentse a fájlt:package org.example.application import com.databricks.connect.DatabricksSession import org.apache.spark.sql.SparkSession object Main { def main(args: Array[String]): Unit = { val spark = DatabricksSession.builder().remote().getOrCreate() val df = spark.read.table("samples.nyctaxi.trips") df.limit(5).show() } }
Ha az 1. lépésben megadott konfigurációs profil neve nem
DEFAULT
szerepel, cserélje le a fájlban lévő meglévő kódot a következő kódra. Cserélje le a helyőrzőt<profile-name>
a konfigurációs profil nevére az 1. lépésben, majd mentse a fájlt:package org.example.application import com.databricks.connect.DatabricksSession import com.databricks.sdk.core.DatabricksConfig import org.apache.spark.sql.SparkSession object Main { def main(args: Array[String]): Unit = { val config = new DatabricksConfig().setProfile("<profile-name>") val spark = DatabricksSession.builder().sdkConfig(config).getOrCreate() val df = spark.read.table("samples.nyctaxi.trips") df.limit(5).show() } }
5. lépés: A kód futtatása
- Indítsa el a célfürtöt a távoli Azure Databricks-munkaterületen.
- A fürt elindítása után a főmenüben kattintson a Futtatás főmenüre>.
- A Futtatás eszközablakban (Windows futtatás megtekintése > >) a Fő lapon megjelenik a
samples.nyctaxi.trips
táblázat első 5 sora.
6. lépés: A kód hibakeresése
- Ha a célfürt továbbra is fut, az előző kódban a töréspont beállításához kattintson a mellette lévő ereszcsatornára
df.limit(5).show()
. - A főmenüben kattintson a Fő hibakeresés futtatása > parancsra.
- A Hibakeresés eszközablakban (Az eszköz windowsos > hibakeresésének megtekintése>) kattintson a Konzol lapon a számológép (Kifejezés kiértékelése) ikonra.
- Adja meg a kifejezést
df.schema
, és kattintson a Kiértékelés gombra a DataFrame sémájának megjelenítéséhez. - A Hibakeresés eszköz ablakának oldalsávján kattintson a zöld nyílra (Program folytatása) ikonra.
- A Konzol panelen megjelenik a
samples.nyctaxi.trips
táblázat első 5 sora.
Következő lépések
A Databricks Connectről az alábbi cikkekben talál további információt:
Ha az Azure Databricks személyes hozzáférési jogkivonattól eltérő Azure Databricks-hitelesítési típusokat szeretne használni, tekintse meg a kapcsolat tulajdonságainak konfigurálását.
Más azonosítók használatához tekintse meg a következőket:
További egyszerű kód példák megtekintéséhez tekintse meg a Scalához készült Databricks Connect kód példáit.
Összetettebb kódpéldák megtekintéséhez tekintse meg a GitHub Databricks Connect-adattárának példaalkalmazásait:
A Databricks Connect for Databricks Runtime 12.2 LTS-ről a Databricks Connect for Databricks Runtime 13.3 LTS-hez és újabb verziókra való migráláshoz lásd : Migrálás a Databricks Connect for Scalához.
További információ a hibaelhárításról és a korlátozásokról.