Freigeben über


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

Anmerkung

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 Codeverwendet wird. Mit Databricks Connect können Sie beliebte IDEs, Notizbuchserver 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.

Anmerkung

Bevor Sie mit der Verwendung von Databricks Connect beginnen, müssen Sie den Databricks Connect-Clienteinrichten.

Um Databricks Connect und Visual Studio Code mit der Scala (Metals) Erweiterung zum Erstellen, Ausführen und Debuggen eines Scala sbt-Beispielprojekts zu verwenden, 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 Seitenleiste auf das Symbol Metals Erweiterung, und klicken Sie dann auf Neues Scala-Projekt.

  6. Wählen Sie in der Befehlspalette die Vorlage scala/hello-world.g8aus, und füllen Sie die Anweisungen auf dem Bildschirm aus, um das Erstellen des Scala-Projekts im angegebenen Ordner abzuschließen.

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

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

    Ersetzen Sie 2.12.15 durch Ihre installierte Version von Scala, die der Version entsprechen soll, die in der Databricks-Runtime-Version auf Ihrem Cluster enthalten ist.

    Ersetzen Sie 14.0.0 durch die Version der Databricks Connect-Bibliothek, die der Databricks-Runtime-Version auf Ihrem Cluster entspricht. Beispielsweise entspricht Databricks Connect 14.3.1 Databricks Runtime 14.3 LTS. Die Versionsnummern der Databricks Connect-Bibliothek finden Sie im Maven Central 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 aus und importieren Sie Build aus der Befehlspalette.

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

  11. Wählen Sie den Scala Debuggerin der Befehlspaletteaus.

  12. Fügen Sie der datei launch.json die folgende Ausführungskonfiguration hinzu, und speichern Sie dann 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 Wiedergabesymbol (Debugging starten) neben Scala: Hauptklasse ausführen. In der Debugkonsole Ansicht (Ansicht > Debugkonsole) werden die ersten 5 Zeilen der samples.nyctaxi.trips Tabelle angezeigt. Der gesamte Scala-Code wird lokal ausgeführt. Allerdings wird Scala-Code, der DataFrame-Operationen beinhaltet, im Cluster im Azure Databricks-Remotearbeitsbereich ausgeführt, und 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 gedebuggt, während der gesamte Scala-Code weiterhin im Cluster im Azure Databricks-Remotearbeitsbereich ausgeführt wird. Der Kerncode des Spark-Moduls kann nicht direkt vom Client gedebuggt werden.