Databricks Connect pro Scala

Poznámka:

Tento článek popisuje Databricks Connect pro Databricks Runtime 13.3 LTS a vyšší.

Tento článek ukazuje, jak rychle začít pracovat s Databricks Connect pomocí Scala s IntelliJ IDEA a modulem plug-in Scala.

Databricks Connect umožňuje připojit k clusterům Azure Databricks oblíbená prostředí IDE, jako jsou IntelliJ IDEA, servery poznámkových bloků a další vlastní aplikace. Podívejte se, co je Databricks Connect?

Kurz

Pokud chcete tento kurz přeskočit a místo toho použít jiné integrované vývojové prostředí (IDE), přečtěte si další kroky.

Požadavky

K dokončení tohoto kurzu musíte splnit následující požadavky:

  • Váš cílový pracovní prostor a cluster Azure Databricks musí splňovat požadavky na konfiguraci clusteru pro 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 clusters adresou URL a configuration do adresy URL.

  • Na vývojovém počítači máte nainstalovanou sadu Java Development Kit (JDK). Databricks doporučuje, aby verze instalace sady JDK, kterou používáte, odpovídala verzi sady JDK ve vašem clusteru Azure Databricks. Následující tabulka uvádí verzi sady JDK pro každý podporovaný modul Databricks Runtime.

    Verze modulu Databricks Runtime Verze sady JDK
    13.3 LTS - 15.0,
    13.3 ML LTS - 15.0 ML
    JDK 8

    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ý modul plug-in 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:

  1. Pokud ještě není nainstalovaný, nainstalujte rozhraní příkazového řádku Databricks následujícím způsobem:

    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 databricks
    

    Windows

    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 Rozhraní příkazového řádku Databricks s Chocolatey je experimentální.

    Pokud chcete použít winget k 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.DatabricksCLI
    

    Pokud chcete k instalaci rozhraní příkazového řádku Databricks použít Chocolatey, spusťte následující příkaz:

    choco install databricks-cli
    

    Použití WSL k instalaci rozhraní příkazového řádku Databricks:

    1. Nainstalujte curl a zip prostřednictvím WSL. Další informace najdete v dokumentaci k operačnímu systému.

    2. 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
      
  2. 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
    

    Poznámka:

    Pokud spustíte databricks , ale zobrazí se chyba, například command not found: databricksnebo pokud spustíte databricks -v a zobrazí se číslo verze 0.18 nebo nižší, znamená to, že váš počítač nemůže najít správnou verzi spustitelného souboru rozhraní příkazového řádku Databricks. Pokud chcete tento problém vyřešit, přečtěte si téma Ověření instalace rozhraní příkazového řádku.

Následujícím způsobem zahajte ověřování OAuth U2M:

  1. Pomocí rozhraní příkazového řádku Databricks zahajte správu tokenů OAuth místně spuštěním následujícího příkazu pro každý cílový pracovní prostor.

    V následujícím příkazu nahraďte <workspace-url> adresou URL služby Azure Databricks pro jednotlivé pracovní prostory, například https://adb-1234567890123456.7.azuredatabricks.net.

    databricks auth login --configure-cluster --host <workspace-url>
    
  2. 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 Enter potvrď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.

    Pokud chcete získat seznam všech existujících profilů, v samostatném terminálu nebo příkazovém řádku spusťte příkaz databricks auth profilespomocí rozhraní příkazového řádku Databricks . Pokud chcete zobrazit existující nastavení konkrétního profilu, spusťte příkaz databricks auth env --profile <profile-name>.

  3. Ve webovém prohlížeči dokončete pokyny na obrazovce, abyste se přihlásili k pracovnímu prostoru Azure Databricks.

  4. 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 šipky dolů a stiskněte Enter. Pokud chcete filtrovat seznam dostupných clusterů, můžete také zadat libovolnou část zobrazovaného názvu clusteru.

  5. 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 --host hodnotou, možná budete muset zadat --host společně možnosti a -p pomoct rozhraní příkazového řádku Databricks najít správné odpovídající informace o tokenu OAuth.

Krok 2: Vytvoření projektu

  1. Spusťte IntelliJ IDEA.

  2. V hlavní nabídce klikněte na Soubor > nový > projekt.

  3. Dejte projektu nějaký smysluplný název.

  4. V části Umístění klikněte na ikonu složky a podle pokynů na obrazovce zadejte cestu k novému projektu Scala.

  5. V případě jazyka klikněte na Scala.

  6. V případě systému sestavení klikněte na tlačítko sbt.

  7. 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.

    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.

  8. V rozevíracím seznamu sbt vyberte nejnovější verzi.

  9. V rozevíracím seznamu Scala vyberte verzi Scala, která odpovídá verzi Scala ve vašem clusteru. Následující tabulka uvádí verzi Scala pro každý podporovaný modul Databricks Runtime:

    Verze modulu Databricks Runtime Verze Scala
    13.3 LTS - 15.0,
    13.3 ML LTS - 15.0 ML
    2.12.15

    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.

  10. Ujistěte se, že je zaškrtnuté políčko Stáhnout zdroje vedle scaly .

  11. Jako předponu balíčku zadejte hodnotu předpony balíčku pro zdroje projektu, například org.example.application.

  12. Ujistěte se, že je zaškrtnuté políčko Přidat vzorový kód .

  13. Klikněte na Vytvořit.

Vytvoření projektu IntelliJ IDEA

Krok 3: Přidání balíčku Databricks Connect

  1. Když otevřete nový projekt Scala, otevřete v okně nástroje Project (View > Tool Windows > Project) soubor s názvem build.sbtv cíli názvu> projektu.

  2. Na konec build.sbt souboru přidejte následující kód, který deklaruje závislost projektu na konkrétní verzi knihovny Databricks Connect pro Scala:

    libraryDependencies += "com.databricks" % "databricks-connect" % "14.3.1"
    

    Nahraďte 14.3.1 verzí knihovny Databricks Connect, která odpovídá verzi Databricks Runtime ve vašem clusteru. Čísla verzí knihovny Databricks Connect najdete v centrálním úložišti Maven.

  3. Kliknutím na tlačítko Načíst sbt změní ikonu oznámení a aktualizujte projekt Scala novým umístěním knihovny a závislostí.

  4. Počkejte, až sbt indikátor průběhu v dolní části integrovaného vývojového prostředí zmizí. Dokončení sbt procesu načítání může trvat několik minut.

Instalace balíčku Databricks Connect

Krok 4: Přidání kódu

  1. V okně nástroje Project otevřete soubor s názvem Main.scalasrc main > scala src>>.

  2. 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: Spuštění kódu

  1. Spusťte cílový cluster ve vzdáleném pracovním prostoru Azure Databricks.
  2. Po spuštění clusteru v hlavní nabídce klikněte na Spustit > "Main".
  3. V okně nástroje Spustit (Zobrazit > nástroj Windows > Spustit) se na kartě Hlavní zobrazí prvních 5 řádků samples.nyctaxi.trips tabulky.

Krok 6: Ladění kódu

  1. Když je cílový cluster stále spuštěný, klikněte v předchozím kódu na hřbet vedle df.limit(5).show() a nastavte zarážku.
  2. V hlavní nabídce klikněte na Spustit > ladění Main.
  3. V okně nástroje Ladění (Zobrazit > nástroj Windows > Ladění) na kartě Konzola klikněte na ikonu kalkulačky (Vyhodnocení výrazu).
  4. Zadejte výraz df.schema a kliknutím na Vyhodnotit zobrazte schéma datového rámce.
  5. Na bočním panelu okna nástroje Ladění klikněte na zelenou šipku (Resume Program).
  6. V podokně Konzola se zobrazí prvních 5 řádků samples.nyctaxi.trips tabulky.

Ladění projektu IntelliJ IDEA

Další kroky

Další informace o službě Databricks Connect najdete v článcích, jako jsou následující: