次の方法で共有


Databricks Connect for Scala で Visual Studio Code を使用する

Note

この記事では、Databricks Runtime 13.3 LTS 以降用の Databricks Connect について説明します。

この記事では、Visual Studio Code で Databricks Connect for Scala を使用する方法について説明します。 Databricks Connect を使用すると、一般的な IDE、ノートブック サーバー、その他のカスタム アプリケーションを Azure Databricks クラスターに接続できます。 「Databricks Connect とは」を参照してください。 この記事の Python バージョンについては、「Databricks Connect for Scala で Visual Studio Code を使用する」を参照してください。

Note

Databricks Connect の使用を開始する前に、Databricks Connect クライアントを設定する必要があります。

Databricks Connect と Visual Studio Code で Scala (Metals) を使用して、サンプル Scala sbt プロジェクトを作成、実行、デバッグするには、次の手順に従ってください。 また、このサンプルを既存の Scala プロジェクトに適応することもできます。

  1. Java Development Kit (JDK) と Scala がローカルにインストールされていることを確認してください。 Databricks では、ローカルの JDK と Scala のバージョンと、Azure Databricks クラスター上の JDK および Scala のバージョンを一致させることをお勧めしています。

  2. 最新バージョンの sbt がローカルにインストールされていることを確認してください。

  3. Visual Studio Code 用 Scala (Metals) 拡張機能をインストールしてください。

  4. Visual Studio Code で、Scala プロジェクトを作成するフォルダーを開きます (ファイル > フォルダーを開く)。

  5. サイドバーで、 メタル 拡張機能アイコンをクリックし、新しい Scala プロジェクトをクリックします。

  6. コマンド パレットで、scala/hello-world.g8 という名前のテンプレートを選択し、画面上の指示に従って特定のフォルダーに Scala プロジェクトの作成を完了してください。

  7. プロジェクト ビルド設定を追加する: エクスプローラーの [表示] ([表示] > [エクスプローラー]) で、プロジェクトのルートから 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 中央リポジトリで確認できます。

  8. 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()
    }
    
  9. プロジェクトをビルドする: コマンド パレットからコマンド >Metals: Import build を実行してください。

  10. プロジェクト実行設定を追加する: [実行とデバッグ] ビュー ([表示] > [実行]) で、[create a launch.json file] (launch.json ファイルを作成する) というラベルのリンクをクリックします。

  11. [コマンド パレット] で、Scala デバッガ―を選択します。

  12. 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": []
        }
      ]
    }
    
  13. プロジェクトを実行する: [Scala: メイン クラスの実行] の横にある [再生] (デバッグの開始) アイコンをクリックしてください。 [デバッグ コンソール] ビュー ([表示] > [デバッグ コンソール]) に、samples.nyctaxi.trips テーブルの最初の 5 行が表示されます。 すべての Scala コードはローカルで実行されますが、DataFrame 操作を含むすべての Scala コードは、リモートの Azure Databricks ワークスペース内のクラスターで実行され、実行応答がローカル呼び出し元に返されます。

  14. プロジェクトをデバッグする: コードにブレークポイントを設定し、[再生] アイコンをもう一度クリックしてください。 すべての Scala はローカルでデバッグされますが、すべての Scala コードはリモートの Azure Databricks ワークスペース内のクラスターで引き続き実行されます。 コア Spark エンジン コードをクライアントから直接デバッグすることはできません。