Delen via


Databricks Connect voor Scala

Notitie

Dit artikel bevat informatie over Databricks Connect voor Databricks Runtime 13.3 LTS en hoger.

In dit artikel wordt gedemonstreerd hoe u snel aan de slag kunt met Databricks Connect met behulp van Scala met IntelliJ IDEA en de Scala-invoegtoepassing.

Met Databricks Connect kunt u populaire IDE's, zoals IntelliJ IDEA, notebookservers en andere aangepaste toepassingen, verbinden met Azure Databricks-clusters. Zie Wat is Databricks Connect?

Zelfstudie

Zie Volgende stappen als u deze zelfstudie wilt overslaan en in plaats daarvan een andere IDE wilt gebruiken.

Vereisten

Als u deze zelfstudie wilt voltooien, moet u aan de volgende vereisten voldoen:

  • Uw Azure Databricks-werkruimte en -cluster moeten voldoen aan de vereisten voor clusterconfiguratie voor Databricks Connect.

  • U moet de cluster-id beschikbaar hebben. Als u de cluster-id wilt ophalen, klikt u in uw werkruimte op Compute op de zijbalk en vervolgens op de naam van het cluster. Kopieer in de adresbalk van uw webbrowser de tekenreeks tussen clusters en configuration in de URL.

  • U hebt de Java Development Kit (JDK) geïnstalleerd op uw ontwikkelcomputer. Databricks raadt aan dat de versie van uw JDK-installatie die u gebruikt overeenkomt met de JDK-versie in uw Azure Databricks-cluster. In de volgende tabel ziet u de JDK-versie voor elke ondersteunde Databricks Runtime.

    Databricks Runtime-versie JDK-versie
    13.3 LTS - 15.0,
    13.3 ML LTS - 15,0 ML
    JDK 8

    Notitie

    Als u geen JDK hebt geïnstalleerd of als u meerdere JDK-installaties op uw ontwikkelcomputer hebt, kunt u later in stap 1 een specifieke JDK installeren of kiezen. Als u een JDK-installatie kiest die lager of hoger is dan de JDK-versie op uw cluster, kan dit onverwachte resultaten opleveren of wordt uw code helemaal niet uitgevoerd.

  • U hebt IntelliJ IDEA geïnstalleerd. Deze zelfstudie is getest met IntelliJ IDEA Community Edition 2023.3.6. Als u een andere versie of editie van IntelliJ IDEA gebruikt, kunnen de volgende instructies variëren.

  • U hebt de Scala-invoegtoepassing voor IntelliJ IDEA geïnstalleerd.

Stap 1: Azure Databricks-verificatie configureren

In deze zelfstudie wordt gebruikgemaakt van Azure Databricks OAuth-verificatie van gebruikers naar machine (U2M) en een Azure Databricks-configuratieprofiel voor verificatie met uw Azure Databricks-werkruimte. Als u in plaats daarvan een ander verificatietype wilt gebruiken, raadpleegt u Verbindingseigenschappen configureren.

Voor het configureren van OAuth U2M-verificatie is de Databricks CLI als volgt vereist:

  1. Als deze nog niet is geïnstalleerd, installeert u de Databricks CLI als volgt:

    Linux, macOS

    Gebruik Homebrew om de Databricks CLI te installeren door de volgende twee opdrachten uit te voeren:

    brew tap databricks/tap
    brew install databricks
    

    Windows

    U kunt winget, Chocolatey of Windows-subsysteem voor Linux (WSL) gebruiken om de Databricks CLI te installeren. Als u deze procedure niet kunt gebruiken winget, Chocolatey of WSL, moet u deze procedure overslaan en in plaats daarvan de Opdrachtprompt of PowerShell gebruiken om de Databricks CLI te installeren vanuit de bron .

    Notitie

    Het installeren van de Databricks CLI met Chocolatey is experimenteel.

    winget Als u de Databricks CLI wilt installeren, voert u de volgende twee opdrachten uit en start u de opdrachtprompt opnieuw:

    winget search databricks
    winget install Databricks.DatabricksCLI
    

    Voer de volgende opdracht uit om Chocolatey te gebruiken om de Databricks CLI te installeren:

    choco install databricks-cli
    

    WSL gebruiken om de Databricks CLI te installeren:

    1. Installeer curl en zip via WSL. Zie de documentatie van uw besturingssysteem voor meer informatie.

    2. Gebruik WSL om de Databricks CLI te installeren door de volgende opdracht uit te voeren:

      curl -fsSL https://raw.githubusercontent.com/databricks/setup-cli/main/install.sh | sh
      
  2. Controleer of de Databricks CLI is geïnstalleerd door de volgende opdracht uit te voeren, waarin de huidige versie van de geïnstalleerde Databricks CLI wordt weergegeven. Deze versie moet 0.205.0 of hoger zijn:

    databricks -v
    

    Notitie

    Als u maar databricks een fout krijgt, zoals command not found: databricks, of als u uitvoert databricks -v en een versienummer van 0.18 of lager wordt vermeld, betekent dit dat uw computer de juiste versie van het uitvoerbare Bestand van de Databricks CLI niet kan vinden. Zie Uw CLI-installatie controleren om dit probleem op te lossen.

Start OAuth U2M-verificatie als volgt:

  1. Gebruik de Databricks CLI om OAuth-tokenbeheer lokaal te starten door de volgende opdracht uit te voeren voor elke doelwerkruimte.

    Vervang in de volgende opdracht bijvoorbeeld https://adb-1234567890123456.7.azuredatabricks.netdoor <workspace-url> de URL van uw Azure Databricks per werkruimte.

    databricks auth login --configure-cluster --host <workspace-url>
    
  2. De Databricks CLI vraagt u om de gegevens op te slaan die u hebt ingevoerd als een Azure Databricks-configuratieprofiel. Druk Enter om de voorgestelde profielnaam te accepteren of voer de naam van een nieuw of bestaand profiel in. Elk bestaand profiel met dezelfde naam wordt overschreven met de gegevens die u hebt ingevoerd. U kunt profielen gebruiken om snel uw verificatiecontext over te schakelen tussen meerdere werkruimten.

    Als u een lijst met bestaande profielen wilt ophalen, gebruikt u in een afzonderlijke terminal of opdrachtprompt de Databricks CLI om de opdracht databricks auth profilesuit te voeren. Als u de bestaande instellingen van een specifiek profiel wilt weergeven, voert u de opdracht databricks auth env --profile <profile-name>uit.

  3. Voltooi in uw webbrowser de instructies op het scherm om u aan te melden bij uw Azure Databricks-werkruimte.

  4. Gebruik in de lijst met beschikbare clusters die worden weergegeven in uw terminal of opdrachtprompt de pijl-omhoog en pijl-omlaag om het Azure Databricks-doelcluster in uw werkruimte te selecteren en druk Enterop . U kunt ook een deel van de weergavenaam van het cluster typen om de lijst met beschikbare clusters te filteren.

  5. Voer een van de volgende opdrachten uit om de huidige OAuth-tokenwaarde van een profiel en de geplande verlooptijdstempel van het token weer te geven:

    • databricks auth token --host <workspace-url>
    • databricks auth token -p <profile-name>
    • databricks auth token --host <workspace-url> -p <profile-name>

    Als u meerdere profielen met dezelfde --host waarde hebt, moet u mogelijk de --host en -p opties opgeven om de Databricks CLI te helpen de juiste overeenkomende OAuth-tokengegevens te vinden.

Stap 2: Het project maken

  1. Start IntelliJ IDEA.

  2. Klik in het hoofdmenu op Bestand > nieuw > project.

  3. Geef uw project een zinvolle naam.

  4. Klik voor Locatie op het mappictogram en voltooi de aanwijzingen op het scherm om het pad naar uw nieuwe Scala-project op te geven.

  5. Klik voor Taal op Scala.

  6. Klik voor buildsysteem op sbt.

  7. Selecteer in de vervolgkeuzelijst JDK een bestaande installatie van de JDK op uw ontwikkelcomputer die overeenkomt met de JDK-versie op uw cluster, of selecteer JDK downloaden en volg de instructies op het scherm om een JDK te downloaden die overeenkomt met de JDK-versie in uw cluster.

    Notitie

    Als u een JDK-installatie kiest die zich boven of onder de JDK-versie van uw cluster bevindt, kan dit onverwachte resultaten opleveren of wordt uw code helemaal niet uitgevoerd.

  8. Selecteer in de vervolgkeuzelijst sbt de meest recente versie.

  9. Selecteer in de vervolgkeuzelijst Scala de versie van Scala die overeenkomt met de Scala-versie in uw cluster. In de volgende tabel ziet u de Scala-versie voor elke ondersteunde Databricks Runtime:

    Databricks Runtime-versie Scala-versie
    13.3 LTS - 15.0,
    13.3 ML LTS - 15,0 ML
    2.12.15

    Notitie

    Als u een Scala-versie kiest die lager of hoger is dan de Scala-versie op uw cluster, kan dit onverwachte resultaten opleveren of wordt uw code mogelijk helemaal niet uitgevoerd.

  10. Zorg ervoor dat het selectievakje Bronnen downloaden naast Scala is ingeschakeld.

  11. Voor pakketvoorvoegsel voert u bijvoorbeeld org.example.applicationeen waarde voor het pakketvoorvoegsel in voor de bronnen van uw project.

  12. Zorg ervoor dat het selectievakje Voorbeeldcode toevoegen is ingeschakeld.

  13. Klik op Create.

Het IntelliJ IDEA-project maken

Stap 3: Het Databricks Connect-pakket toevoegen

  1. Als het nieuwe Scala-project is geopend, opent u het bestand met de naam build.sbtin het projectnaamdoel in het venster Project-hulpprogramma (Windows Project weergeven).>>>

  2. Voeg de volgende code toe aan het einde van het build.sbt bestand, waarmee de afhankelijkheid van uw project wordt opgegeven op een specifieke versie van de Databricks Connect-bibliotheek voor Scala:

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

    Vervang 14.3.1 door de versie van de Databricks Connect-bibliotheek die overeenkomt met de Databricks Runtime-versie in uw cluster. U vindt de versienummers van de Databricks Connect-bibliotheek in de centrale Maven-opslagplaats.

  3. Klik op het meldingspictogram voor het laden van wijzigingen om uw Scala-project bij te werken met de nieuwe bibliotheeklocatie en -afhankelijkheid.

  4. Wacht totdat de sbt voortgangsindicator onder aan de IDE verdwijnt. Het sbt laden kan enkele minuten duren.

Het Databricks Connect-pakket installeren

Stap 4: Code toevoegen

  1. Open in het venster Project-hulpprogramma het bestand met de naam Main.scala, in project-name> src > main > scala.

  2. Vervang bestaande code in het bestand door de volgende code en sla het bestand op, afhankelijk van de naam van uw configuratieprofiel.

    Als uw configuratieprofiel uit stap 1 de naam DEFAULTheeft, vervangt u alle bestaande code in het bestand door de volgende code en slaat u het bestand op:

    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()
      }
    }
    

    Als uw configuratieprofiel uit stap 1 geen naam DEFAULTheeft, vervangt u in plaats daarvan bestaande code in het bestand door de volgende code. Vervang de tijdelijke aanduiding <profile-name> door de naam van uw configuratieprofiel uit stap 1 en sla het bestand op:

    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()
      }
    }
    

Stap 5: De code uitvoeren

  1. Start het doelcluster in uw externe Azure Databricks-werkruimte.
  2. Nadat het cluster is gestart, klikt u in het hoofdmenu op Uitvoeren > 'Hoofd'.
  3. In het venster Hulpprogramma Uitvoeren (Windows Uitvoeren weergeven >>) worden op het tabblad Main de eerste vijf rijen van de samples.nyctaxi.trips tabel weergegeven.

Stap 6: Fouten opsporen in de code

  1. Als het doelcluster nog steeds wordt uitgevoerd, klikt u in de voorgaande code op de rugmarge naast om een onderbrekingspunt in te df.limit(5).show() stellen.
  2. Klik in het hoofdmenu op > Hoofdopsporing uitvoeren.
  3. Klik in het venster Foutopsporingsprogramma (Windows >> Foutopsporing weergeven) op het tabblad Console op het rekenmachinepictogram (Expressie evalueren).
  4. Voer de expressie df.schema in en klik op Evalueren om het schema van het DataFrame weer te geven.
  5. Klik in de zijbalk van het hulpprogramma voor foutopsporing op het groene pijlpictogram (Programma hervatten).
  6. In het consolevenster worden de eerste vijf rijen van de samples.nyctaxi.trips tabel weergegeven.

Fouten opsporen in het IntelliJ IDEA-project

Volgende stappen

Zie de volgende artikelen voor meer informatie over Databricks Connect: