Usare Visual Studio Code con databricks Connessione per Scala
Nota
Questo articolo illustra databricks Connessione per Databricks Runtime 13.3 LTS e versioni successive.
Questo articolo illustra come usare Databricks Connessione per Scala con Visual Studio Code. Databricks Connessione consente di connettere IDE, server notebook e altre applicazioni personalizzate ai cluster di Azure Databricks. Vedere Che cos'è Databricks Connessione?. Per la versione Python di questo articolo, vedere Usare Visual Studio Code con Databricks Connessione per Python.
Nota
Prima di iniziare a usare Databricks Connessione, è necessario configurare il client databricks Connessione.
Per usare Databricks Connessione e Visual Studio Code con l'estensione Scala (Metal) per creare, eseguire ed eseguire il debug di un progetto Scala sbt
di esempio, seguire queste istruzioni. È anche possibile adattare questo esempio ai progetti Scala esistenti.
Assicurarsi che Java Development Kit (JDK) e Scala siano installati in locale. Databricks consiglia che la versione JDK e Scala locale corrispondano alla versione di JDK e Scala nel cluster Azure Databricks.
Assicurarsi che la versione più recente di
sbt
sia installata localmente.Installare l'estensione Scala (Metal) per Visual Studio Code.
In Visual Studio Code aprire la cartella in cui si vuole creare il progetto Scala (File > Open Folder).
Sulla barra laterale fare clic sull'icona dell'estensione Metalli e quindi su Nuovo progetto Scala.
Nel riquadro comandi scegliere il modello denominato scala/hello-world.g8 e completare le istruzioni visualizzate per completare la creazione del progetto Scala nella cartella specificata.
Aggiungere le impostazioni di compilazione del progetto: nella visualizzazione Esplora risorse (Visualizza > esplora risorse) aprire il
build.sbt
file dalla radice del progetto, sostituire il contenuto del file con il codice seguente e salvare il file:scalaVersion := "2.12.15" libraryDependencies += "com.databricks" % "databricks-connect" % "14.0.0"
Sostituire
2.12.15
con la versione installata di Scala, che deve corrispondere alla versione inclusa nella versione di Databricks Runtime nel cluster.Sostituire
14.0.0
con la versione della libreria di Connessione databricks corrispondente alla versione di Databricks Runtime nel cluster. È possibile trovare i numeri di versione della libreria Connessione Databricks nel repository centrale Maven.Aggiungere il codice Scala: aprire il
src/main/scala/Main.scala
file relativo alla radice del progetto, sostituire il contenuto del file con il codice seguente e salvare il file: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() }
Compilare il progetto: eseguire il comando >Metalli: Importare la compilazione dal riquadro comandi.
Aggiungi impostazioni di esecuzione del progetto: nella visualizzazione Esegui e debug (Visualizza > esecuzione) fare clic sul collegamento etichettato crea un file launch.json.
Nel riquadro comandi selezionare Debugger Scala.
Aggiungere la configurazione di esecuzione seguente al
launch.json
file e quindi salvare il file:{ // 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": [] } ] }
Eseguire il progetto: fare clic sull'icona di riproduzione (Avvia debug) accanto a Scala: Esegui classe principale. Nella visualizzazione Console di debug (Visualizza > console di debug) vengono visualizzate le prime 5 righe della
samples.nyctaxi.trips
tabella. Tutto il codice Scala viene eseguito localmente, mentre tutto il codice Scala che include operazioni dataframe viene eseguito nel cluster nell'area di lavoro remota di Azure Databricks e le risposte di esecuzione vengono inviate al chiamante locale.Eseguire il debug del progetto: impostare punti di interruzione nel codice e quindi fare di nuovo clic sull'icona di riproduzione. Tutto il codice Scala viene sottoposto a debug in locale, mentre tutto il codice Scala continua a essere eseguito nel cluster nell'area di lavoro remota di Azure Databricks. Il codice principale del motore Spark non può essere sottoposto a debug direttamente dal client.