Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
W tym samouczku pokazano, jak rozpocząć pracę z programem Databricks Connect dla języka Scala przy użyciu środowiska IntelliJ IDEA i wtyczki Scala.
W tym samouczku utworzysz projekt w środowisku IntelliJ IDEA, zainstalujesz program Databricks Connect dla środowiska Databricks Runtime 13.3 LTS lub nowszego, a następnie uruchomisz prosty kod na komputerze w obszarze roboczym Databricks z poziomu środowiska IntelliJ IDEA.
Wskazówka
Aby dowiedzieć się, jak za pomocą pakietów zasobów usługi Databricks utworzyć projekt Scala, który uruchamia kod w bezserwerowych obliczeniach, zobacz Tworzenie pliku JAR języka Scala przy użyciu pakietów zasobów usługi Databricks.
Wymagania
Aby ukończyć ten samouczek, musisz spełnić następujące wymagania:
Obszar roboczy, środowisko lokalne i obliczenia spełniają wymagania dotyczące programu Databricks Connect dla języka Scala. Zobacz Wymagania dotyczące użycia usługi Databricks Connect.
Musisz mieć dostępny identyfikator klastra. Aby uzyskać identyfikator klastra, w obszarze roboczym kliknij Obliczenia na pasku bocznym, a następnie kliknij nazwę swojego klastra. Na pasku adresu przeglądarki internetowej skopiuj ciąg znaków między
clustersiconfigurationw adresie URL.Masz zainstalowany zestaw Java Development Kit (JDK) na komputerze deweloperskim. Aby uzyskać informacje o wersji do zainstalowania, zobacz macierz obsługi wersji.
Uwaga / Notatka
Jeśli nie masz zainstalowanego zestawu JDK lub masz wiele instalacji zestawu JDK na komputerze deweloperskim, możesz zainstalować lub wybrać określony zestaw JDK w dalszej części kroku 1. Wybranie instalacji zestawu JDK poniżej lub nowszej wersji zestawu JDK w klastrze może spowodować nieoczekiwane wyniki lub kod może w ogóle nie działać.
Masz zainstalowany program IntelliJ IDEA. Ten samouczek został przetestowany przy użyciu środowiska IntelliJ IDEA Community Edition 2023.3.6. Jeśli używasz innej wersji lub wydania środowiska IntelliJ IDEA, poniższe instrukcje mogą się różnić.
Masz zainstalowaną wtyczkę Scala dla środowiska IntelliJ IDEA.
Krok 1. Konfigurowanie uwierzytelniania usługi Azure Databricks
W tym samouczku używane jest uwierzytelnianie użytkownika do maszyny (U2M) usługi Azure Databricks oraz profil konfiguracji usługi Azure Databricks do uwierzytelniania i autoryzacji w obszarze roboczym usługi Azure Databricks. Aby zamiast tego użyć innego typu uwierzytelniania, zobacz Konfigurowanie właściwości połączenia.
Konfigurowanie uwierzytelniania OAuth U2M wymaga wiersza polecenia usługi Databricks, jak poniżej:
Zainstaluj interfejs wiersza polecenia usługi Databricks:
Linux, macOS
Użyj Homebrew, aby zainstalować Databricks CLI, uruchamiając następujące dwa polecenia:
brew tap databricks/tap brew install databricksWindows
Do zainstalowania interfejsu wiersza polecenia usługi Databricks można użyć zestawu narzędzi winget, Chocolatey lub Podsystem Windows dla systemu Linux (WSL). Jeśli nie możesz użyć
winget, Chocolatey lub WSL, należy pominąć tę procedurę i użyć wiersza polecenia lub programu PowerShell, aby zainstalować Databricks CLI ze źródła.Uwaga / Notatka
Instalowanie Databricks CLI za pomocą platformy Chocolatey jest eksperymentalne.
Aby użyć
wingetdo zainstalowania interfejsu wiersza polecenia usługi Databricks, uruchom następujące dwa polecenia, a następnie uruchom ponownie Wiersz Polecenia.winget search databricks winget install Databricks.DatabricksCLIAby zainstalować Databricks CLI za pomocą narzędzia Chocolatey, uruchom następujące polecenie.
choco install databricks-cliAby użyć programu WSL do zainstalowania CLI Databricks:
Zainstaluj
curlizippoprzez WSL. Aby uzyskać więcej informacji, zobacz dokumentację systemu operacyjnego.Użyj programu WSL, aby zainstalować interfejs wiersza polecenia usługi Databricks, uruchamiając następujące polecenie:
curl -fsSL https://raw.githubusercontent.com/databricks/setup-cli/main/install.sh | sh
Upewnij się, że interfejs wiersza polecenia usługi Databricks jest zainstalowany, uruchamiając następujące polecenie, które wyświetla bieżącą wersję zainstalowanego interfejsu wiersza polecenia usługi Databricks. Ta wersja powinna mieć wartość 0.205.0 lub nowszą:
databricks -v
Zainicjuj uwierzytelnianie OAuth U2M w następujący sposób:
Użyj Databricks CLI, aby lokalnie zainicjować zarządzanie tokenami OAuth, uruchamiając następujące polecenie dla każdego docelowego obszaru roboczego.
W poniższym poleceniu zastąp ciąg
<workspace-url>adresem URL usługi Azure Databricks dla obszaru roboczego, na przykładhttps://adb-1234567890123456.7.azuredatabricks.net.databricks auth login --configure-cluster --host <workspace-url>Interfejs wiersza polecenia usługi Databricks poprosi Cię o zapisanie wprowadzonych informacji jako profil konfiguracji usługi Azure Databricks. Naciśnij
Enter, aby zaakceptować sugerowaną nazwę profilu lub wprowadź nazwę nowego lub istniejącego profilu. Każdy istniejący profil o tej samej nazwie zostanie zastąpiony wprowadzonymi informacjami. Profile umożliwiają szybkie przełączanie kontekstu uwierzytelniania między wieloma obszarami roboczymi.Aby uzyskać listę wszystkich istniejących profilów, w osobnym terminalu lub wierszu polecenia użyj interfejsu wiersza polecenia usługi Databricks, aby uruchomić polecenie
databricks auth profiles. Aby wyświetlić istniejące ustawienia określonego profilu, uruchom poleceniedatabricks auth env --profile <profile-name>.W przeglądarce internetowej wykonaj instrukcje na ekranie, aby zalogować się do obszaru roboczego usługi Azure Databricks.
Na liście dostępnych klastrów wyświetlanych w terminalu lub wierszu polecenia użyj strzałek w górę i w dół, aby wybrać docelowy klaster usługi Azure Databricks w obszarze roboczym, a następnie naciśnij
Enter. Możesz również wpisać dowolną część nazwy wyświetlanej klastra, aby filtrować listę dostępnych klastrów.Aby wyświetlić bieżącą wartość tokenu OAuth profilu i zbliżający się znacznik czasu wygaśnięcia tokenu, uruchom jedno z następujących poleceń:
databricks auth token --host <workspace-url>databricks auth token -p <profile-name>databricks auth token --host <workspace-url> -p <profile-name>
Jeśli masz wiele profilów o tej samej wartości
--host, może być konieczne jednoczesne określenie opcji--hosti-p, aby pomóc interfejsowi CLI usługi Databricks w znalezieniu prawidłowych informacji pasujących do tokenu OAuth.
Krok 2. Tworzenie projektu
Uruchom środowisko IntelliJ IDEA.
W menu głównym kliknij pozycję Plik > Nowy > Projekt.
Nadaj projektowi znaczącą nazwę.
Dla lokalizacji i, kliknij ikonę folderu, a następnie postępuj zgodnie z instrukcjami wyświetlanymi na ekranie, aby określić ścieżkę do nowego projektu Scala.
W obszarze Język kliknij Scala.
W obszarze System budowania kliknij pozycję sbt.
Z listy rozwijanej zestaw JDK wybierz istniejącą instalację zestawu JDK na maszynie dewelopera zgodnej z wersją zestawu JDK w klastrze lub wybierz pozycję Pobierz zestaw JDK i postępuj zgodnie z instrukcjami wyświetlanymi na ekranie, aby pobrać zestaw JDK zgodny z wersją zestawu JDK w klastrze. Zobacz Wymagania.
Uwaga / Notatka
Wybranie instalacji zestawu JDK, która znajduje się powyżej lub poniżej wersji zestawu JDK w klastrze, może spowodować nieoczekiwane wyniki lub kod może w ogóle nie działać.
Z listy rozwijanej sbt wybierz najnowszą wersję.
Z listy rozwijanej Scala wybierz wersję języka Scala zgodną z wersją języka Scala w klastrze. Zobacz Wymagania.
Uwaga / Notatka
Wybranie wersji języka Scala poniżej lub nowszej wersji języka Scala w klastrze może spowodować nieoczekiwane wyniki lub kod może w ogóle nie działać.
Upewnij się, że pole Pobierz źródła obok pozycji Scala jest zaznaczone.
W polu Prefiks pakietu wprowadź wartość prefiksu pakietu dla źródeł projektu, na przykład
org.example.application.Upewnij się, że pole Dodaj przykładowy kod jest zaznaczone.
Kliknij pozycję Utwórz.
Krok 3. Dodawanie pakietu Databricks Connect
Po otwarciu nowego projektu Scala w oknie narzędzia Project (Wyświetl > narzędzie > Windows Project), otwórz plik o nazwie
build.sbt, w katalogu project-name> target.Dodaj następujący kod na końcu
build.sbtpliku, który deklaruje zależność projektu od określonej wersji biblioteki Databricks Connect dla języka Scala zgodnej z wersją środowiska Databricks Runtime klastra:libraryDependencies += "com.databricks" %% "databricks-connect" % "17.0.+"Zastąp
17.0wersją biblioteki Databricks Connect zgodną z wersją środowiska Databricks Runtime w klastrze. Na przykład usługa Databricks Connect 16.4.+ pasuje do środowiska Databricks Runtime 16.4 LTS. Numery wersji biblioteki usługi Databricks Connect można znaleźć w centralnym repozytorium Maven.Uwaga / Notatka
Podczas kompilowania za pomocą usługi Databricks Connect nie dołączaj artefaktów platformy Apache Spark, takich jak
org.apache.spark:spark-corew projekcie. Zamiast tego skompiluj bezpośrednio program Databricks Connect.Kliknij ikonę powiadomienia Załaduj zmiany sbt, aby zaktualizować projekt Scala, uwzględniając nową lokalizację biblioteki i zależności.
Poczekaj, aż wskaźnik postępu
sbtw dolnej części środowiska IDE zniknie. Proces ładowaniasbtmoże potrwać kilka minut.
Krok 4. Dodawanie kodu
W oknie narzędzia Project otwórz plik o nazwie
Main.scala, w project-name> src > main > scala.Zastąp istniejący kod w pliku następującym kodem, a następnie zapisz plik w zależności od nazwy profilu konfiguracji.
Jeśli profil konfiguracji z kroku 1 nosi nazwę
DEFAULT, zastąp dowolny istniejący kod w pliku następującym kodem, a następnie zapisz plik: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() } }Jeśli profil konfiguracji z kroku 1 nie ma nazwy
DEFAULT, zastąp dowolny istniejący kod w pliku poniższym kodem. Zastąp symbol zastępczy<profile-name>nazwą profilu konfiguracji z kroku 1, a następnie zapisz plik: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. Konfigurowanie opcji maszyny wirtualnej
Zaimportuj bieżący katalog do swojego IntelliJ, gdzie znajduje się
build.sbt.Wybierz Java 17 w środowisku IntelliJ. Przejdź do Plik>Struktura Projektu>SDKs.
Otwórz
src/main/scala/com/examples/Main.scala.Przejdź do konfiguracji main, aby dodać opcje maszyny wirtualnej:
Dodaj następujące elementy do opcji maszyny wirtualnej:
--add-opens=java.base/java.nio=ALL-UNNAMED
Wskazówka
Alternatywnie lub jeśli używasz programu Visual Studio Code, dodaj następujące polecenie do pliku kompilacji sbt:
fork := true
javaOptions += "--add-opens=java.base/java.nio=ALL-UNNAMED"
Następnie uruchom aplikację z poziomu terminalu:
sbt run
Krok 6. Uruchamianie kodu
- Uruchom klaster docelowy w zdalnym obszarze roboczym usługi Azure Databricks.
- Po uruchomieniu klastra, w menu głównym kliknij Uruchom > 'Main'.
-
W oknie narzędzia Uruchom (Widok > Okna Narzędzi > Uruchom), na karcie Main (Główne) wyświetlone zostaną pierwsze pięć wierszy
samples.nyctaxi.tripstabeli.
Krok 7. Debugowanie kodu
Gdy klaster docelowy jest wciąż uruchomiony, w poprzednim kodzie kliknij w margen obok
df.limit(5).show(), aby ustawić punkt przerwania.W menu głównym kliknij Uruchom > "Debugowanie 'Main'". W oknie narzędziowym Debug (Widok > Okna narzędzi > Debug), na karcie Konsola, kliknij ikonę kalkulatora (Oceń wyrażenie).
Wprowadź wyrażenie
df.schema.Kliknij przycisk Oceń , aby wyświetlić schemat ramki danych.
Na pasku bocznym okna narzędzia debugowania kliknij ikonę zielonej strzałki (wznów program). Pierwsze 5 wierszy
samples.nyctaxi.tripstabeli jest wyświetlanych w okienku Konsola .