Freigeben über


Verwenden von Visual Studio Code mit Databricks Connect für Scala

Hinweis

Dieser Artikel behandelt Databricks Connect für Databricks Runtime Version 13.3 LTS und höher.

In diesem Artikel wird beschrieben, wie Databricks Connect für Scala mit Visual Studio Code verwendet wird. Mit Databricks Connect können Sie beliebte IDEs, Notebookserver und andere benutzerdefinierte Anwendungen mit Azure Databricks-Clustern verbinden. Weitere Informationen finden Sie unter Was ist Databricks Connect?. Die Python-Version dieses Artikels finden Sie unter Verwenden von Visual Studio Code mit Databricks Connect für Python.

Hinweis

Bevor Sie beginnen, Databricks Connect zu verwenden, müssen Sie den Databricks Connect-Client einrichten.

Wenn Sie Databricks Connect und Visual Studio Code mit der Erweiterung Scala (Metals) verwenden möchten, um ein Scala-sbt-Beispielprojekt zu erstellen, auszuführen und zu debuggen, befolgen Sie diese Anweisungen. Sie können dieses Beispiel auch an Ihre vorhandenen Scala-Projekte anpassen.

  1. Stellen Sie sicher, dass das Java Development Kit (JDK) und Scala lokal installiert sind. Databricks empfiehlt, dass Ihre lokale JDK- und Scala-Version mit der Version von JDK und Scala auf Ihrem Azure Databricks-Cluster übereinstimmen.

  2. Stellen Sie sicher, dass die neueste Version von sbt lokal installiert ist.

  3. Installieren Sie die Scala (Metals)-Erweiterung für Visual Studio Code.

  4. Öffnen Sie in Visual Studio Code den Ordner, in dem Sie Ihr Scala-Projekt erstellen möchten (Datei > Ordner öffnen).

  5. Klicken Sie auf der Randleiste auf das Erweiterungssymbol Metals, und klicken Sie dann auf Neues Scala-Projekt.

  6. Wählen Sie in der Befehlspalette die Vorlage scala/hello-world.g8 aus, und schließen Sie die Anweisungen auf dem Bildschirm ab, um das Scala-Projekt zu erstellen.

  7. Fügen Sie Projektbuildeinstellungen hinzu: Öffnen Sie in der Explorer-Ansicht (-Explorer> anzeigen) die Datei build.sbt aus dem Stammverzeichnis des Projekts, ersetzen Sie den Inhalt der Datei durch Folgendes, und speichern Sie die Datei:

    scalaVersion := "2.12.15"
    
    libraryDependencies += "com.databricks" % "databricks-connect" % "14.0.0"
    

    Ersetzen Sie 2.12.15 durch die installierte Version von Scala, die mit der Databricks-Runtime-Version auf Ihrem Cluster übereinstimmt.

    Ersetzen Sie 14.0.0 durch die Version der Databricks Connect-Bibliothek, die der Databricks-Runtime-Version auf Ihrem Cluster entspricht. Die Versionsnummern der Databricks Connect-Bibliothek finden Sie im zentralen Maven-Repository.

  8. Fügen Sie Scala-Code hinzu: Öffnen Sie die src/main/scala/Main.scala-Datei relativ zum Stammverzeichnis des Projekts, ersetzen Sie den Inhalt der Datei durch Folgendes, und speichern Sie die Datei:

    import com.databricks.connect.DatabricksSession
    import org.apache.spark.sql.SparkSession
    
    object Main extends App {
      val spark = DatabricksSession.builder().remote().getOrCreate()
      val df = spark.read.table("samples.nyctaxi.trips")
      df.limit(5).show()
    }
    
  9. Erstellen Sie das Projekt: Führen Sie den Befehl >Metals: Build aus der Befehlspalette importieren aus.

  10. Hinzufügen von Projektausführungseinstellungen: Klicken Sie in der Ansicht Ausführen und Debuggen (Ansicht > Ausführen) auf den Link mit der Bezeichnung Erstellen einer launch.json-Datei.

  11. Wählen Sie in der Befehlspalette die Option Scala-Debugger aus.

  12. Fügen Sie der launch.json-Datei die folgende Ausführungskonfiguration hinzu, und speichern Sie die Datei:

    {
      // Use IntelliSense to learn about possible attributes.
      // Hover to view descriptions of existing attributes.
      // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
      "version": "0.2.0",
      "configurations": [
        {
          "type": "scala",
          "request": "launch",
          "name": "Scala: Run main class",
          "mainClass": "Main",
          "args": [],
          "jvmOptions": []
        }
      ]
    }
    
  13. Führen Sie das Projekt aus: Klicken Sie auf das Symbol (Wiedergabe starten) neben Scala: Hauptklasse ausführen. In der Debugkonsolenansicht (Debugging-Konsole> anzeigen) werden die ersten 5 Zeilen der Tabelle samples.nyctaxi.trips angezeigt. Der gesamte Scala-Code wird lokal ausgeführt, während der gesamte Scala-Code mit DataFrame-Vorgängen im Cluster im Azure Databricks-Remotearbeitsbereich ausgeführt wird. Die Ausführungsantworten werden an den lokalen Aufrufer zurückgesendet.

  14. Debuggen Sie das Projekt: Legen Sie Haltepunkte in Ihrem Code fest, und klicken Sie dann erneut auf das Wiedergabesymbol. Der gesamte Scala-Code wird lokal debuggt, während der gesamte Scala-Code weiterhin im Cluster im Azure Databricks-Remotearbeitsbereich ausgeführt wird. Der Kerncode der Spark-Engine kann nicht direkt vom Client aus debuggt werden.