拡張機能のバージョン 2 で Databricks アセット バンドルを使用する

注:

Visual Studio Code の Databricks 拡張機能バージョン 2 は、プライベート プレビュー段階にあります。

Visual Studio Code の Databricks 拡張機能バージョン 2 を使用すると、Visual Studio Code を使用して、CI/CD パターンとベスト プラクティスを Databricks ジョブ、 Delta Live Tablesパイプライン、MLOps スタックに適用することで、Databricks アセット バンドルを定義、デプロイ、実行できるようになります。 「Databricks アセット バンドルとは何ですか?」を参照してください。 。

プロジェクトでの Databricks アセット バンドルのサポート

Visual Studio Code の Databricks 拡張機能バージョン 2 では、Databricks アセット バンドルに対する次のサポートがコード プロジェクトに追加されます。

  • databricks.ymlファイルには、Databricks アセット バンドルの設定が YAML 形式で記述されます。 Visual Studio Code エディターを使用して、この YAML を編集できます。 YAML 構文の詳細については、 「Databricks アセット バンドルの構成」を参照してください。

  • DAB リソース エクスプローラーペインがDatabricks拡張機能ビューに表示されます。これにより、Databricks アセット バンドルのリソースを視覚的に参照したり、ローカル Databricks アセット バンドルのリソースをリモート Databricks ワークスペースに 1 回のクリックでデプロイしたり、デプロイされたリソースに直接移動したりできます。 Visual Studio Code のワークスペース。 DAB リソース エクスプローラーの使用を参照してください。

DAB リソース エクスプローラー

以下のいずれかを実行します。

既存の Databricks アセット バンドル プロジェクトを開く

既存の Databricks アセット バンドル プロジェクトがある場合は、次のように Visual Studio Code バージョン 2 の Databricks 拡張機能を使用して開くことができます。

注:

プロジェクトのルート フォルダーに databricks.yml ファイルが必要です。 「Databricks アセット バンドルの構成」を参照してください。

  1. Visual Studio Code バージョン 2 の Databricks 拡張機能をインストールしてセットアップします 。「 Visual Studio Code バージョン 2 の Databricks 拡張機能をインストールして開く」を参照してください。

  2. バージョン 2 拡張機能をアクティブにして、既存の Databricks Asset Bundles プロジェクトを開きます。メイン メニューで[ファイル] > [フォルダーを開く]をクリックし、画面上の指示に従います。

  3. この拡張機能は、プロジェクトのdatabricks.ymlファイルをスキャンし、それを使用して、ローカル開発マシン上で使用する一致する Databricks 認証構成プロファイルを見つけようとします (これは通常、Linux または macOS の~または%USERPROFILE%.databrickscfgファイルにあります) Windows の場合)。

    • 拡張機能が一致するプロファイルを見つけた場合は、ステップ 12 に進み、クラスター情報を拡張機能に追加します。

    • 拡張機能が一致するプロファイルを見つけられない場合は、次のステップに進みます。

  4. [構成]ペインで、 [Databricks へのログイン] をクリックします。

    Databricks にログインする
  5. [コマンド パレット]で、このリストに認証構成プロファイルが既にあり、そのラベルに「OAuth を使用した認証 (ユーザーからマシン)」というラベルが付いており、ターゲットの Databricks ホストに対応していることがわかっている場合は、それをリストから選択して、次の操作を実行します。続く:

    1. プロンプトが表示されたら、Web ブラウザーで画面上の指示を完了して、Databricks での認証を完了します。

    2. プロンプトが表示された場合は、 すべての API アクセスを許可します。

    3. 正常にログインしたら、Visual Studio Code に戻ります。

    4. ステップ 12 に進み、クラスター情報を拡張機能に追加します。

    注:

    Databricks では、すぐに開始できるように、OAuth ユーザー対マシン (U2M) 認証を使用することをお勧めします。 他の認証タイプを使用する場合は、 「Visual Studio Code の Databricks 拡張機能の認証セットアップ」を参照してください。

  6. [認証方法の選択]で、 [OAuth (ユーザーからマシンへ)]を選択します。 他の認証タイプを使用する場合は、 「Visual Studio Code の Databricks 拡張機能の認証セットアップ」を参照してください。

  7. 関連付けられた Databricks 認証プロファイルの名前を入力します。

  8. [構成]ペインで、 [Databricks へのログイン] をクリックします。

    Databricks にログインする
  9. [コマンド パレット][認証方法の選択]で、作成したばかりの認証構成プロファイルの名前を選択します。

  10. プロンプトが表示されたら、Web ブラウザーで画面上の指示を完了して、Databricks での認証を完了します。 プロンプトが表示された場合は、 すべての API アクセスを許可します。

  11. 正常にログインしたら、Visual Studio Code に戻ります。

  12. [クラスターの選択]をクリックし、歯車 (クラスターの構成) アイコンをクリックします。

    クラスターの構成
  13. [コマンド パレット]で既存のクラスターを選択するか、 [新しいクラスターの作成]をクリックして画面上の指示に従います。

  14. 「DAB リソース エクスプローラーの使用」に進みます。

Databricks アセット バンドルのサポートをプロジェクトに追加する

次の手順では、Databricks アセット バンドルの基本サポートを既存のコード プロジェクトに追加します。 サポートは、デプロイ ターゲットを指定する単一のdatabricks.ymlファイルに限定されますが、Databricks ジョブ、Delta Live Tables パイプライン、Python パッケージ、MLOps スタックなどのリソースはサポートされません。 デプロイ ターゲットに加えてリソースを指定するには、 「新しい Databricks アセット バンドル プロジェクトの作成」に進んでください。

  1. Visual Studio Code バージョン 2 の Databricks 拡張機能をインストールしてセットアップします 。「 Visual Studio Code バージョン 2 の Databricks 拡張機能をインストールして開く」を参照してください。

  2. 拡張機能をアクティブにして、既存のコード プロジェクトを開きます: メイン メニューで [ファイル ] > [ フォルダーを開く ] をクリックし、画面の指示に従います。 拡張機能は、 databricks.yml ファイルをプロジェクトのルート フォルダーに追加します。

  3. この拡張機能は、プロジェクトをスキャンして、使用するローカル開発マシン上で一致する Databricks 認証構成プロファイルを見つけようとします (通常、Linux または macOS の~または Windows の%USERPROFILE%.databrickscfgファイルにあります)。

    • 拡張機能が一致するプロファイルを見つけた場合は、ステップ 13 に進み、クラスター情報を拡張機能に追加します。

    • 拡張機能が一致するプロファイルを見つけられない場合は、次のステップに進みます。

    注:

    [Configuration]ペインに[Login to Databricks]エントリが表示された場合は、それをクリックし、ログインするステップ 10 に進みます。

    Databricks にログインする
  4. 構成 」ペインで、「 プロジェクトの初期化」をクリックします。

    プロジェクトの初期化
  5. [コマンド パレット][Databricks Host]に、 ワークスペース インスタンスの URL (例: https://1234567890123456.7.gcp.databricks.com ) を入力します。 次に、 Enter キーを押します。

  6. このリストにOAuth (ユーザーからマシン) を使用して認証するというラベルが付いており、ターゲット Databricks ホストに対応することがわかっている認証構成プロファイルが既にある場合は、それをリストから選択して、次の操作を実行します。

    1. プロンプトが表示されたら、Web ブラウザーで画面上の指示を完了して、Databricks での認証を完了します。

    2. プロンプトが表示された場合は、 すべての API アクセスを許可します。

    3. 正常にログインしたら、Visual Studio Code に戻ります。

    4. ステップ 13 に進み、クラスター情報を拡張機能に追加します。

    注:

    Databricks では、すぐに開始できるように、OAuth ユーザー対マシン (U2M) 認証を使用することをお勧めします。 他の認証タイプを使用する場合は、 「Visual Studio Code の Databricks 拡張機能の認証セットアップ」を参照してください。

  7. [認証方法の選択]で、 [OAuth (ユーザーからマシンへ)]を選択します。

  8. 関連付けられた Databricks 認証プロファイルの名前を入力します。

  9. [構成]ペインで、 [Databricks へのログイン] をクリックします。

    Databricks にログインする
  10. [コマンド パレット][認証方法の選択]で、作成したばかりの認証構成プロファイルの名前を選択します。

  11. プロンプトが表示されたら、Web ブラウザーで画面上の指示を完了して、Databricks での認証を完了します。 プロンプトが表示された場合は、 すべての API アクセスを許可します。

  12. 正常にログインしたら、Visual Studio Code に戻ります。

  13. [クラスターの選択]をクリックし、歯車 (クラスターの構成) アイコンをクリックします。

    クラスターの構成
  14. [コマンド パレット]で既存のクラスターを選択するか、 [新しいクラスターの作成]をクリックして画面上の指示に従います。

  15. 「DAB リソース エクスプローラーの使用」に進みます。

新しい Databricks アセット バンドル プロジェクトを作成する

  1. Visual Studio Code バージョン 2 の Databricks 拡張機能をインストールしてセットアップします 。「 Visual Studio Code バージョン 2 の Databricks 拡張機能をインストールして開く」を参照してください。

  2. 拡張機能がアクティブな状態で、次のいずれかの操作を行います。

    • Visual Studio Code でフォルダーを開いていない状態で、[ 構成 ] ウィンドウで [ プロジェクトの初期化] をクリックし、新しいプロジェクトの親フォルダーを選択します。

      プロジェクトの初期化
    • Visual Studio Code でフォルダーが既に開いている状態で、[ 構成 ] ウィンドウでフォルダー (新しいプロジェクトの初期化) アイコンをクリックします。

      新しいプロジェクトを初期化する
  3. コマンド パレットで、現在の認証構成プロファイルを使用するか、新しいプロファイルを作成するかを選択します。 現在のプロファイルを使用することを選択した場合は、画面上の指示をすべて完了し、ステップ 8 に進み、プロジェクトを作成するローカル開発マシン上のパスを選択します。

  4. Databricks Hostには、 ワークスペース インスタンスの URLを入力します (例: https://1234567890123456.7.gcp.databricks.com )。 次に、 Enter キーを押します。

  5. このリストにOAuth (ユーザーからマシン) を使用して認証するというラベルが付いており、ターゲット Databricks ホストに対応することがわかっている認証構成プロファイルが既にある場合は、それをリストから選択して、次の操作を実行します。

    1. プロンプトが表示されたら、Web ブラウザーで画面上の指示を完了して、Databricks での認証を完了します。

    2. プロンプトが表示された場合は、 すべての API アクセスを許可します。

    3. ステップ 8 に進み、プロジェクトを作成するローカル開発マシン上のパスを選択します。

    注:

    Databricks では、すぐに開始できるように、OAuth ユーザー対マシン (U2M) 認証を使用することをお勧めします。 他の認証タイプを使用する場合は、 「Visual Studio Code の Databricks 拡張機能の認証セットアップ」を参照してください。

  6. [認証方法の選択]で、 [OAuth (ユーザーからマシンへ)]を選択します。

  7. [ Enter a name for the new profile (新しいプロファイルの名前を入力してください)] に、この新しい認証設定プロファイルの覚えやすい名前を入力し、 Enter キーを押します。

  8. 「新しいプロジェクトを配置したいフォルダーへのパスを指定してください」が表示された場合は、プロジェクトを作成するローカル開発コンピューター上のフォルダーへのパスを入力するか、 「フォルダー選択ダイアログを開く」をクリックしてプロジェクトへのパスを選択します。フォルダ。

  9. [Databricks プロジェクト初期化エディター] タブの[使用するテンプレート]で、上矢印または下矢印を使用して、使用できる Databricks アセット バンドル プロジェクト テンプレートの 1 つを選択し、 Enterを押します。 この手順では、 default-python プロジェクト テンプレートを使用します。 これらのテンプレートの詳細については、次を参照してください。

    このテンプレートに関する情報は…

    見る。。。

    default-python

    アセット バンドルを使用して でジョブを開発するDatabricks Databricks アセット Delta Live Tablesバンドルを使用して パイプラインを開発するDatabricks 、および アセット バンドルを使用してPython wheel ファイルを開発するDatabricks

    mlops-stacks

    MLOps スタックのDatabricksアセットバンドル

  10. [このプロジェクトの一意の名前]に、このプロジェクトの名前を入力してEnter キーを押すか、 Enter キーを押してデフォルトのプロジェクト名my_projectのままにします。

  11. スタブ (サンプル) ノートブック、スタブ (サンプル) Delta Live Tables パイプライン、またはスタブ (サンプル) Python パッケージをプロジェクトに追加するか、またはこれらのスタブ (サンプル) の任意の組み合わせを追加するかを選択します。

  12. 任意のキーを押して、 Databricks プロジェクト初期化エディター タブを閉じます。

  13. [開きたいプロジェクトを選択してください]で、ステップ 8 で指定したフォルダーへのパスを選択します。

  14. 「DAB リソース エクスプローラーの使用」に進みます。

DAB リソース エクスプローラーを使用する

Visual Studio Code バージョン 2 の Databricks 拡張機能のDAB リソース エクスプローラーペインは、コード プロジェクトのルートにあるdatabricks.ymlファイルを使用して Databricks アセット バンドルのリソースを視覚的に表示し、リモート Databricks のリソースにデプロイしてアクセスできるようにします。ワークスペース。

DAB リソース エクスプローラー

注:

次の情報は、単純なdatabricks.ymlファイルについて説明しています。 新しい Databricks アセット バンドル プロジェクトの作成のステップに従った場合、databricks.yml には追加のコンテンツが含まれる可能性があり、 ファイルは、 includeマッピングで指定されている追加のファイルにdatabricks.ymlする可能性があります。

たとえば、単一のdatabricks.ymlファイル内の単純な Databricks アセット バンドル定義は次のようになります。 このファイルでは、次のプレースホルダーに注意してください。

  • <bundle-name> これは Databricks アセット バンドルの名前であり、デフォルトではコード プロジェクトのルート フォルダー名と一致します。 すでに入力されているはずです。

  • <cluster-id> は、この記事の前半で選択したクラスターの ID です。 このプレースホルダーをそのクラスターの ID に手動で置き換える必要があります。

  • <workspace-host-url> は Databricks ワークスペースの URL です。デフォルトでは、この記事の前半で Databricks アセット バンドルのサポートをプロジェクトに追加したときに入力した URL と一致します。 すでに入力されているはずです。

bundle:
  name: <bundle-name>

resources:
  jobs:
    my-notebook-job:
      name: "My Notebook Job"
      tasks:
        - task_key: my-notebook-task
          existing_cluster_id: <cluster-id>
          notebook_task:
            notebook_path: notebooks/my-notebook.py

targets:
  dev:
    mode: development
    default: true
    workspace:
      host: <workspace-host-url>

YAML 構文の詳細については、 「Databricks アセット バンドルの構成」を参照してください。

この Databricks アセット バンドルが正しく動作するには、 my-notebook.pyという名前のファイルをnotebooksという名前のフォルダーに追加する必要があります。 このnotebooksフォルダは、notebook_pathの相対パスで定義されているように、databricks.yamlファイルと同じフォルダにある必要があります。my-notebook.pyファイルは次のように単純なものにすることができます。これは、文字列Hello, World!を出力するだけのノートブックです。

# Databricks notebook source
print("Hello, World!")

コード プロジェクトにmy-notebook.pyおよびdatabricks.ymlファイルを保存すると、拡張機能のDAB リソース エクスプローラーペインに Databricks アセット バンドルのリソースがグラフィカルに表示されるようになります。

DAB リソース エクスプローラー

Databricks アセット バンドルをデプロイするには、 DAB リソース エクスプローラーペインでクラウド (バンドルのデプロイ) アイコンをクリックします。

バンドルのデプロイ

ジョブを実行するには、 DAB リソース エクスプローラーペインで[マイ ノートブック ジョブ]をクリックし、再生 (バンドルをデプロイしてリソースを実行する) アイコンをクリックします。

バンドルをデプロイしてリソースを実行する

実行中のジョブを表示するには、 DAB リソース エクスプローラーペインで[マイ ノートブック ジョブ]を展開し、 [実行ステータス]をクリックして、リンク (外部リンクを開く) アイコンをクリックします。

ジョブリンクを外部に開く

別のデプロイメント ターゲットに切り替えるには (たとえば、 devターゲットからprodターゲットに切り替える場合)、 [構成]ペインでターゲット アイコンをクリックし、歯車 ( Databricks アセット バンドル ターゲットの選択) アイコンをクリックします。 。 次に、コマンド パレットで、目的のデプロイメント ターゲットを選択します。

Databricks アセット バンドル ターゲットを選択します