Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Tento kurz ukazuje, jak začít používat Databricks Connect pro Scala pomocí IntelliJ IDEA a modulu plug-in Scala.
V tomto kurzu vytvoříte projekt v IntelliJ IDEA, nainstalujete Databricks Connect pro Databricks Runtime 13.3 LTS a novější a spustíte jednoduchý kód na výpočetních prostředcích v pracovním prostoru Databricks z IntelliJ IDEA.
Návod
Informace o použití sad prostředků Databricks k vytvoření projektu Scala, který spouští kód na bezserverových výpočetních prostředcích, najdete v tématu Vytvoření souboru JAR Scala pomocí sad prostředků Databricks.
Požadavky
K dokončení tohoto kurzu musíte splnit následující požadavky:
Váš pracovní prostor, místní prostředí a výpočetní prostředí splňují požadavky pro Databricks Connect pro Scala. Viz požadavky na využití Databricks Connect.
Musíte mít k dispozici ID clusteru. Pokud chcete získat ID clusteru, klikněte v pracovním prostoru na bočním panelu na Compute a potom na název clusteru. V adresní řádku webového prohlížeče zkopírujte řetězec znaků mezi
clustersadresou URL aconfigurationdo adresy URL.Na vývojovém počítači máte nainstalovanou sadu Java Development Kit (JDK). Informace o verzi, která se má nainstalovat, najdete v matici podpory verzí.
Poznámka:
Pokud nemáte nainstalovanou sadu JDK nebo máte na vývojovém počítači více instalací sady JDK, můžete nainstalovat nebo zvolit konkrétní sadu JDK později v kroku 1. Volba instalace sady JDK, která je nižší nebo vyšší než verze sady JDK ve vašem clusteru, může způsobit neočekávané výsledky nebo se váš kód nemusí vůbec spustit.
Máte nainstalovaný IntelliJ IDEA. Tento kurz byl testován v IntelliJ IDEA Community Edition 2023.3.6. Pokud používáte jinou verzi nebo edici IntelliJ IDEA, můžou se následující pokyny lišit.
Máte nainstalovaný plugin Scala pro IntelliJ IDEA.
Krok 1: Konfigurace ověřování Azure Databricks
V tomto kurzu se k ověřování v pracovním prostoru Azure Databricks používá ověřování uživatele na počítač (U2M) Azure Databricks a konfigurační profil Azure Databricks. Pokud chcete místo toho použít jiný typ ověřování, přečtěte si téma Konfigurace vlastností připojení.
Konfigurace ověřování OAuth U2M vyžaduje rozhraní příkazového řádku Databricks následujícím způsobem:
Pokud ještě není nainstalovaný, nainstalujte rozhraní příkazového řádku Databricks:
Linux, macOS
Pomocí Homebrew nainstalujte Rozhraní příkazového řádku Databricks spuštěním následujících dvou příkazů:
brew tap databricks/tap brew install databricksWindows
K instalaci rozhraní příkazového řádku Databricks můžete použít winget, Chocolatey nebo Subsystém Windows pro Linux (WSL). Pokud nemůžete použít
winget, Chocolatey nebo WSL, měli byste tento postup přeskočit a místo toho použít příkazový řádek nebo PowerShell k instalaci rozhraní příkazového řádku Databricks ze zdroje .Poznámka:
Instalace Databricks CLI pomocí Chocolatey je experimentální.
Pokud chcete použít
wingetk instalaci rozhraní příkazového řádku Databricks, spusťte následující dva příkazy a restartujte příkazový řádek:winget search databricks winget install Databricks.DatabricksCLIPokud chcete k instalaci rozhraní příkazového řádku Databricks použít Chocolatey, spusťte následující příkaz:
choco install databricks-cliJak použít WSL k instalaci příkazového řádku Databricks:
Nainstalujte
curlazipprostřednictvím WSL. Další informace najdete v dokumentaci k operačnímu systému.Pomocí WSL nainstalujte rozhraní příkazového řádku Databricks spuštěním následujícího příkazu:
curl -fsSL https://raw.githubusercontent.com/databricks/setup-cli/main/install.sh | sh
Spuštěním následujícího příkazu ověřte, že je nainstalované rozhraní příkazového řádku Databricks, které zobrazuje aktuální verzi nainstalovaného rozhraní příkazového řádku Databricks. Tato verze by měla být 0.205.0 nebo vyšší:
databricks -v
Následujícím způsobem zahajte ověřování OAuth U2M:
Pomocí Databricks CLI spusťte místní správu tokenů OAuth tak, že pro každý cílový pracovní prostor použijete následující příkaz.
V následujícím příkazu nahraďte
<workspace-url>adresou URL služby Azure Databricks pro jednotlivé pracovní prostory, napříkladhttps://adb-1234567890123456.7.azuredatabricks.net.databricks auth login --configure-cluster --host <workspace-url>Rozhraní příkazového řádku Databricks vás vyzve k uložení informací, které jste zadali jako konfigurační profil Azure Databricks. Stisknutím klávesy
Enterpotvrďte navrhovaný název profilu nebo zadejte název nového nebo existujícího profilu. Všechny existující profily se stejným názvem se přepíšou informacemi, které jste zadali. Profily můžete použít k rychlému přepnutí kontextu ověřování napříč několika pracovními prostory.Seznam existujících profilů získáte tak, že v samostatném terminálu nebo příkazovém řádku použijete rozhraní příkazového řádku Databricks ke spuštění příkazu
databricks auth profiles. Pokud chcete zobrazit existující nastavení konkrétního profilu, spusťte příkazdatabricks auth env --profile <profile-name>.Ve webovém prohlížeči dokončete pokyny na obrazovce, abyste se přihlásili k pracovnímu prostoru Azure Databricks.
V seznamu dostupných clusterů, které se zobrazí v terminálu nebo příkazovém řádku, vyberte cílový cluster Azure Databricks v pracovním prostoru pomocí šipky nahoru a dolů a stiskněte
Enter. Pokud chcete filtrovat seznam dostupných clusterů, můžete také zadat libovolnou část zobrazovaného názvu clusteru.Pokud chcete zobrazit aktuální hodnotu tokenu OAuth profilu a nadcházející časové razítko vypršení platnosti tokenu, spusťte jeden z následujících příkazů:
databricks auth token --host <workspace-url>databricks auth token -p <profile-name>databricks auth token --host <workspace-url> -p <profile-name>
Pokud máte více profilů se stejnou
--hosthodnotou, možná budete muset zadat možnosti--hosta-pspolečně, aby rozhraní příkazového řádku Databricks mohlo najít správné odpovídající informace o tokenu OAuth.
Krok 2: Vytvoření projektu
Spusťte IntelliJ IDEA.
V hlavní nabídce klikněte na Soubor > Nový > Projekt.
Dejte projektu nějaký smysluplný název.
V části Umístění klikněte na ikonu složky a podle pokynů na obrazovce zadejte cestu k novému projektu Scala.
V případě jazyka klikněte na Scala.
U systému sestavení klepněte na tlačítko sbt.
V rozevíracím seznamu JDK vyberte existující instalaci sady JDK na vývojovém počítači, která odpovídá verzi sady JDK v clusteru, nebo vyberte Stáhnout sadu JDK a podle pokynů na obrazovce stáhněte sadu JDK, která odpovídá verzi sady JDK ve vašem clusteru. Viz Požadavky.
Poznámka:
Volba instalace sady JDK, která je vyšší nebo nižší než verze sady JDK ve vašem clusteru, může způsobit neočekávané výsledky nebo se váš kód nemusí vůbec spustit.
V rozevíracím seznamu sbt vyberte nejnovější verzi.
V rozevíracím seznamu Scala vyberte verzi Scala, která odpovídá verzi Scala ve vašem clusteru. Viz Požadavky.
Poznámka:
Volba verze Scala, která je nižší nebo vyšší než verze Scala ve vašem clusteru, může způsobit neočekávané výsledky nebo se váš kód nemusí vůbec spustit.
Ujistěte se, že je políčko Stáhnout zdroje vedle Scala zaškrtnuté.
Pro předponu balíčku zadejte hodnotu pro zdroje vašeho projektu, například
org.example.application.Ujistěte se, že je zaškrtnuté políčko Přidat vzorový kód .
Klikněte na Vytvořit.
Krok 3: Přidání balíčku Databricks Connect
S otevřeným novým projektem Scala, v okně nástroje Project (Zobrazit > Tool Windows > Project), otevřete soubor s názvem
build.sbt, v název projektu> target.Na konec
build.sbtsouboru přidejte následující kód, který deklaruje závislost vašeho projektu na konkrétní verzi knihovny Databricks Connect pro Scala, která je kompatibilní s verzí Databricks Runtime vašeho clusteru:libraryDependencies += "com.databricks" %% "databricks-connect" % "17.0.+"Nahraďte
17.0verzí knihovny Databricks Connect, která odpovídá verzi Databricks Runtime ve vašem clusteru. Například Databricks Connect 16.4.+ odpovídá Databricks Runtime 16.4 LTS. Čísla verzí knihovny Databricks Connect najdete v centrálním úložišti Maven.Poznámka:
Při sestavování pomocí Databricks Connect nezahrnujte artefakty Apache Sparku, jako je
org.apache.spark:spark-core, ve svém projektu. Místo toho zkompilujte přímo proti Databricks Connect.Kliknutím na ikonu oznámení Načíst změny sbt aktualizujete projekt Scala s novým umístěním knihovny a závislostí.
Počkejte, až indikátor průběhu
sbtv dolní části integrovaného vývojového prostředí zmizí. Dokončenísbtprocesu načítání může trvat několik minut.
Krok 4: Přidání kódu
V okně nástroje Project otevřete soubor s názvem
Main.scalav projekt> src > main > scala.Nahraďte veškerý existující kód v souboru následujícím kódem a pak soubor uložte v závislosti na názvu vašeho konfiguračního profilu.
Pokud má váš konfigurační profil z kroku 1 název
DEFAULT, nahraďte veškerý existující kód v souboru následujícím kódem a pak soubor uložte: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() } }Pokud váš konfigurační profil z kroku 1 není pojmenovaný
DEFAULT, nahraďte veškerý existující kód v souboru následujícím kódem. Zástupný symbol<profile-name>nahraďte názvem konfiguračního profilu z kroku 1 a pak soubor uložte: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() } }
Krok 5: Konfigurace možností virtuálního počítače
Naimportujte aktuální adresář do prostředí IntelliJ, kde
build.sbtse nachází.V IntelliJ zvolte Javu 17. Přejděte do Soubor>Struktura projektu>SDK.
Otevřít
src/main/scala/com/examples/Main.scala.Přejděte do konfigurace pro Main a přidejte možnosti virtuálního počítače:
Do možností virtuálního počítače přidejte následující:
--add-opens=java.base/java.nio=ALL-UNNAMED
Návod
Případně pokud používáte Visual Studio Code, přidejte do souboru sestavení sbt následující:
fork := true
javaOptions += "--add-opens=java.base/java.nio=ALL-UNNAMED"
Pak aplikaci spusťte z terminálu:
sbt run
Krok 6: Spuštění kódu
- Spusťte cílový cluster ve vzdáleném pracovním prostoru Azure Databricks.
- Po spuštění clusteru v hlavní nabídce klikněte na Spustit > Spustit 'Main'.
- V okně nástroje Spustit (Zobrazit > Nástroj Windows > Spustit), na kartě Hlavní se zobrazí prvních 5 řádků tabulky
samples.nyctaxi.trips.
Krok 7: Ladění kódu
Když je cílový klastr stále spuštěný, klikněte v předchozím kódu na okraj vedle
df.limit(5).show()a nastavte zarážku.V hlavní nabídce klikněte na Spustit ladění 'Hlavní'>. V okně nástroje Ladění (Zobrazit > Nástrojová okna > Ladění), na kartě Konzola, klikněte na ikonu kalkulačky (Vyhodnotit výraz).
Zadejte výraz
df.schema.Kliknutím na Tlačítko Vyhodnotit zobrazíte schéma datového rámce.
Na bočním panelu okna nástroje Ladění klikněte na zelenou šipku (Resume Program). Prvních 5 řádků
samples.nyctaxi.tripstabulky se zobrazí v podokně konzoly .