Not
Åtkomst till denna sida kräver auktorisation. Du kan prova att logga in eller byta katalog.
Åtkomst till denna sida kräver auktorisation. Du kan prova att byta katalog.
Den här självstudien visar hur du kommer igång med Databricks Connect för Scala med IntelliJ IDEA och Scala-plugin-programmet.
I den här självstudien skapar du ett projekt i IntelliJ IDEA, installerar Databricks Connect för Databricks Runtime 13.3 LTS och senare och kör enkel kod för beräkning på Databricks-arbetsytan från IntelliJ IDEA.
Tips/Råd
Information om hur du använder Databricks-tillgångspaket för att skapa ett Scala-projekt som kör kod på serverlös beräkning finns i Skapa en Scala JAR med Databricks Asset Bundles.
Kravspecifikation
För att slutföra den här självstudien måste du uppfylla följande krav:
Din arbetsyta, lokala miljö och beräkning uppfyller kraven för Databricks Connect för Scala. Se Användningskrav för Databricks Connect.
Du måste ha ditt kluster-ID tillgängligt. Om du vill hämta ditt kluster-ID klickar du på Beräkning i sidofältet i arbetsytan och klickar sedan på klustrets namn. Kopiera teckensträngen mellan
clustersochconfigurationi URL:en i webbläsarens adressfält.Du har Java Development Kit (JDK) installerat på utvecklingsdatorn. Information om vilken version som ska installeras finns i versionsstödmatrisen.
Anmärkning
Om du inte har ett JDK installerat, eller om du har flera JDK-installationer på utvecklingsdatorn, kan du installera eller välja ett specifikt JDK senare i steg 1. Om du väljer en JDK-installation som är lägre än eller högre än JDK-versionen i klustret kan det ge oväntade resultat, eller så kanske koden inte körs alls.
Du har IntelliJ IDEA installerat. Den här handledningen har testats med IntelliJ IDEA Community Edition 2023.3.6. Om du använder en annan version eller utgåva av IntelliJ IDEA kan följande instruktioner variera.
Du har Scala-plugin-programmet för IntelliJ IDEA installerat.
Steg 1: Konfigurera Azure Databricks-autentisering
I den här självstudien används OAuth-användartill-dator-autentisering (U2M) med Azure Databricks och en konfigurationsprofil för Azure Databricks för att autentisera med din Azure Databricks-arbetsyta. Information om hur du använder en annan autentiseringstyp finns i Konfigurera anslutningsegenskaper.
För att konfigurera OAuth U2M-autentisering krävs Databricks CLI enligt följande:
Installera Databricks CLI:
Linux, macOS
Använd Homebrew för att installera Databricks CLI genom att köra följande två kommandon:
brew tap databricks/tap brew install databricksWindows
Du kan använda winget, Chocolatey eller Windows-undersystem för Linux (WSL) för att installera Databricks CLI. Om du inte kan använda
winget, Chocolatey eller WSL bör du hoppa över den här proceduren och använda Kommandotolken eller PowerShell för att installera Databricks CLI från källan i stället.Anmärkning
Det är experimentellt att installera Databricks CLI med Chocolatey.
Om du vill använda
wingetför att installera Databricks CLI kör du följande två kommandon och startar sedan om kommandotolken:winget search databricks winget install Databricks.DatabricksCLIKör följande kommando för att använda Chocolatey för att installera Databricks CLI:
choco install databricks-cliSå här använder du WSL för att installera Databricks CLI:
Installera
curlochzipvia WSL. Mer information finns i dokumentationen för ditt operativsystem.Använd WSL för att installera Databricks CLI genom att köra följande kommando:
curl -fsSL https://raw.githubusercontent.com/databricks/setup-cli/main/install.sh | sh
Bekräfta att Databricks CLI har installerats genom att köra följande kommando, som visar den aktuella versionen av det installerade Databricks CLI. Den här versionen ska vara 0.205.0 eller senare:
databricks -v
Initiera OAuth U2M-autentisering på följande sätt:
Använd Databricks CLI för att initiera OAuth-tokenhantering lokalt genom att köra följande kommando för varje målarbetsyta.
I följande kommando ersätter du
<workspace-url>med url:en för Azure Databricks per arbetsyta, till exempelhttps://adb-1234567890123456.7.azuredatabricks.net.databricks auth login --configure-cluster --host <workspace-url>Databricks CLI uppmanar dig att spara den information som du angav som en Azure Databricks-konfigurationsprofil. Tryck
Enterför att acceptera det föreslagna profilnamnet eller ange namnet på en ny eller befintlig profil. Alla befintliga profiler med samma namn skrivs över med den information som du angav. Du kan använda profiler för att snabbt växla autentiseringskontext över flera arbetsytor.Om du vill hämta en lista över befintliga profiler i en separat terminal eller kommandotolk använder du Databricks CLI för att köra kommandot
databricks auth profiles. Om du vill visa en specifik profils befintliga inställningar kör du kommandotdatabricks auth env --profile <profile-name>.I webbläsaren slutför du anvisningarna på skärmen för att logga in på din Azure Databricks-arbetsyta.
I listan över tillgängliga kluster som visas i terminalen eller kommandotolken använder du upppilen och nedåtpilen för att välja Azure Databricks-målklustret på arbetsytan och trycker sedan på
Enter. Du kan också ange valfri del av klustrets visningsnamn för att filtrera listan över tillgängliga kluster.Om du vill visa en profils aktuella OAuth-tokenvärde och tokens kommande förfallotidsstämpel kör du något av följande kommandon:
databricks auth token --host <workspace-url>databricks auth token -p <profile-name>databricks auth token --host <workspace-url> -p <profile-name>
Om du har flera profiler med samma
--hostvärde kan du behöva ange--hostalternativen och-ptillsammans för att hjälpa Databricks CLI att hitta rätt matchande OAuth-tokeninformation.
Steg 2: Skapa projektet
Starta upp IntelliJ IDEA.
På huvudmenyn klickar du på Arkiv > Nytt > projekt.
Ge projektet ett beskrivande namn.
För Plats klickar du på mappikonen och slutför anvisningarna på skärmen för att ange sökvägen till ditt nya Scala-projekt.
För Språk klickar du på Scala.
För Skapa system klickar du på sbt.
I listrutan JDK väljer du en befintlig installation av JDK:t på utvecklingsdatorn som matchar JDK-versionen i klustret eller väljer Ladda ned JDK och följer anvisningarna på skärmen för att ladda ned en JDK som matchar JDK-versionen i klustret. Se kraven.
Anmärkning
Om du väljer en JDK-installation som ligger ovanför eller under JDK-versionen i klustret kan det ge oväntade resultat, eller så kanske koden inte körs alls.
I listrutan sbt väljer du den senaste versionen.
I listrutan Scala väljer du den version av Scala som matchar Scala-versionen i klustret. Se kraven.
Anmärkning
Om du väljer en Scala-version som är lägre än eller högre än Scala-versionen i klustret kan det ge oväntade resultat, eller så kanske koden inte körs alls.
Kontrollera att rutan Ladda ned källor bredvid Scala är markerad.
För Paketprefix anger du ett paketprefixvärde för projektets källor, till exempel
org.example.application.Kontrollera att rutan Lägg till exempelkod är markerad.
Klicka på Skapa.
Steg 3: Lägg till Databricks Connect-paketet
När du har ditt nya Scala-projekt öppet, öppna verktygsfönstret Project (View > Tool Windows > Project), och öppna filen som heter
build.sbti projektnamn> target.Lägg till följande kod i slutet av
build.sbtfilen, som deklarerar projektets beroende av en specifik version av Databricks Connect-biblioteket för Scala, kompatibel med Databricks Runtime-versionen av klustret:libraryDependencies += "com.databricks" %% "databricks-connect" % "17.0.+"Ersätt
17.0med den version av Databricks Connect-biblioteket som matchar Databricks Runtime-versionen i klustret. Databricks Connect 16.4.+ matchar till exempel Databricks Runtime 16.4 LTS. Du hittar versionsnumren för Databricks Connect-biblioteket på den centrala Maven-lagringsplatsen.Anmärkning
När du skapar med Databricks Connect ska du inte inkludera Apache Spark-artefakter som
org.apache.spark:spark-corei projektet. Kompilera i stället direkt mot Databricks Connect.Klicka på meddelandeikonen Läs in sbt-ändringar så att Scala-projektet uppdateras med den nya platsen för biblioteket och beroendet.
Vänta tills förloppsindikatorn
sbtlängst ned i IDE försvinner. Inläsningsprocessensbtkan ta några minuter att slutföra.
Steg 4: Lägg till kod
I verktygsfönstret för projektet öppnar du filen med namnet
Main.scalai projektnamn> src > main > scala.Ersätt befintlig kod i filen med följande kod och spara sedan filen, beroende på namnet på din konfigurationsprofil.
Om konfigurationsprofilen från steg 1 heter
DEFAULTersätter du eventuell befintlig kod i filen med följande kod och sparar sedan filen: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() } }Om konfigurationsprofilen från steg 1 inte heter
DEFAULTersätter du eventuell befintlig kod i filen med följande kod i stället. Ersätt platshållaren<profile-name>med namnet på konfigurationsprofilen från steg 1 och spara sedan filen: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() } }
Steg 5: Konfigurera alternativen för virtuella datorer
Importera den aktuella katalogen i din IntelliJ där
build.sbtfinns.Välj Java 17 i IntelliJ. Gå till Fil>Projektstruktur>SDK:er.
Öppna
src/main/scala/com/examples/Main.scala.Gå till konfigurationen för Main för att lägga till vm-alternativ:
Lägg till följande i alternativen för den virtuella datorn:
--add-opens=java.base/java.nio=ALL-UNNAMED
Tips/Råd
Alternativt, eller om du använder Visual Studio Code, lägger du till följande i din sbt build-fil:
fork := true
javaOptions += "--add-opens=java.base/java.nio=ALL-UNNAMED"
Kör sedan programmet från terminalen:
sbt run
Steg 6: Kör koden
- Starta målklustret på din fjärranslutna Azure Databricks-arbetsyta.
- Efter att klustret har startat, klickar du på huvudmenyn och väljer Kör 'Main'>.
- I verktygsfönstret Kör (View > Tool Windows > Run) på fliken Main visas de första 5 raderna i tabellen
samples.nyctaxi.trips.
Steg 7: Felsöka koden
Med målklustret fortfarande igång klickar du i den föregående koden på marginalen bredvid
df.limit(5).show()för att ange en brytpunkt.På huvudmenyn klickar du på Kör > felsökning "Main". I verktygsfönstret Felsökning (View > Tool Windows > Debug) på fliken Console klickar du på kalkylatorn (Utvärdera uttryck).
Ange uttrycket
df.schema.Klicka på Utvärdera för att visa dataramens schema.
I sidofältet för felsökningsverktyget klickar du på den gröna pilen (Återuppta program). De första 5 raderna i
samples.nyctaxi.tripstabellen visas i konsolfönstret .