搭配使用 Visual Studio Code 搭配適用於 Scala 的 Databricks 連線
注意
本文涵蓋 Databricks 連線 Databricks Runtime 13.3 LTS 和更新版本。
本文涵蓋如何使用 Databricks 連線 for Scala 搭配 Visual Studio Code。 Databricks 連線 可讓您將熱門的 IDE、Notebook 伺服器和其他自定義應用程式連線至 Azure Databricks 叢集。 請參閱什麼是 Databricks 連線?。 如需本文的 Python 版本,請參閱搭配使用 Visual Studio Code 與適用於 Python 的 Databricks 連線。
注意
開始使用 Databricks 連線 之前,您必須先設定 Databricks 連線 用戶端。
若要使用 Databricks 連線 和 Visual Studio Code 搭配 Scala (Metals) 延伸模組來建立、執行及偵錯範例 Scala sbt
專案,請遵循這些指示。 您也可以將此範例調整為現有的 Scala 專案。
請確定已在本機安裝 Java 開發工具套件 (JDK) 和 Scala。 Databricks 建議本機 JDK 和 Scala 版本符合 Azure Databricks 叢集上的 JDK 和 Scala 版本。
請確定最新版本
sbt
已安裝在本機。安裝適用於 Visual Studio Code 的 Scala (Metals) 延伸模組。
在 Visual Studio Code 中,開啟您要建立 Scala 專案的資料夾(檔案 > 開啟資料夾)。
在提要欄位中,按兩下 [金屬 ] 延伸圖示,然後按兩下 [ 新增 Scala 專案]。
在命令選擇區中,選擇名為 scala/hello-world.g8 的範本,然後完成螢幕上的指示,以完成在指定的資料夾中建立 Scala 專案。
新增專案建置設定:在 [總管] 檢視中>,從專案的根目錄開啟
build.sbt
檔案、將檔案的內容取代為下列專案,然後儲存盤案:scalaVersion := "2.12.15" libraryDependencies += "com.databricks" % "databricks-connect" % "14.0.0"
將 取代
2.12.15
為已安裝的 Scala 版本,其應該符合叢集上 Databricks Runtime 版本隨附的版本。將 取代
14.0.0
為與叢集上 Databricks 運行時間版本相符的 Databricks 連線 連結庫版本。 您可以在 Maven 中央存放庫中找到 Databricks 連線 連結庫版本號碼。新增 Scala 程式代碼:開啟
src/main/scala/Main.scala
相對於專案根目錄的檔案、將檔案的內容取代為下列內容,然後儲存盤案: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() }
建置專案:執行命令金屬:從命令 >選擇區匯入組建 。
新增專案執行設定:在 [執行和偵錯] 檢視中,>按兩下標示為建立launch.json檔案的連結。
在命令 選擇區中,選取 [ Scala 調試程式]。
將下列執行組態新增至
launch.json
檔案,然後儲存盤案:{ // 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": [] } ] }
執行專案:按下 Scala:執行主要類別旁的播放 (開始偵錯) 圖示。 在 [偵 錯控制台 ] 檢視 [檢視 > 偵錯控制台] 中,數據表的前 5 個數據列
samples.nyctaxi.trips
隨即出現。 所有 Scala 程式代碼都會在本機執行,而涉及 DataFrame 作業的所有 Scala 程式代碼都會在遠端 Azure Databricks 工作區的叢集上執行,並執行回應會傳回給本機呼叫端。偵錯專案:在您的程式代碼中設定斷點,然後按下播放圖示。 所有 Scala 程式代碼都會在本機進行偵錯,而所有 Scala 程式代碼都會繼續在遠端 Azure Databricks 工作區中的叢集上執行。 核心 Spark 引擎程式代碼無法直接從客戶端進行偵錯。