Visual Studio Code with Databricks Connect for Scala
注
この記事では、Databricks Connect for Databricks Runtime 13.3 LTS 以降について説明します。
この記事では、 Visual Studio Code で Databricks Connect for Scala を使用する方法について説明します。 Databricks Connect を使用すると、一般的な IDE、ノートブック サーバー、およびその他のカスタム アプリケーションを Databricks クラスターに接続できます。 「Databricks Connect とは」を参照してください。この記事の Python バージョンについては、「 Databricks Connect for Python での Visual Studio Code の使用」を参照してください。
注
Databricks Connectの使用を開始する前に、Databricks Connect クライアントをセットアップする必要があります。
Databricks Connect と Visual Studio Code を Scala (Metals) 拡張機能と共に使用して、サンプルの Scala sbt
プロジェクトを作成、実行、デバッグするには、次の手順に従います。 このサンプルを既存の Scala プロジェクトに適合させることもできます。
Java 開発キット (JDK) と Scala がローカルにインストールされていることを確認します。 Databricks では、ローカルの JDK と Scala のバージョンを、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 Runtime バージョンと一致するバージョンの Databricks Connect ライブラリに置き換えます。 Databricks Connect ライブラリのバージョン番号は、 Maven の中央リポジトリで確認できます。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() }
プロジェクトをビルドする: コマンド パレットから >Metals: ビルドのインポート ] コマンドを実行します。
プロジェクト実行設定の追加: Run & Debug ビュー (View > Run ) で、[起動の作成] というラベルの付いたリンクをクリックします。 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: メインクラスを実行の横にある再生 (デバッグ開始) アイコンをクリックします。[デバッグ コンソール] ビュー ([デバッグ コンソールの表示]>) に、
samples.nyctaxi.trips
テーブルの最初の 5 行が表示されます。すべての Scala コードはローカルで実行されますが、DataFrame 操作に関連するすべての Scala コードはリモート Databricks ワークスペースのクラスターで実行され、実行応答はローカルの呼び出し元に送り返されます。プロジェクトをデバッグする: コードにブレークポイントを設定し、再生アイコンをもう一度クリックします。 すべての Scala コードはローカルでデバッグされますが、すべての Scala コードはリモート Databricks ワークスペースのクラスターで引き続き実行されます。 コア Spark エンジン コードをクライアントから直接デバッグすることはできません。