Databricks Connect でノートブックを使用する
注:
この機能は、Databricks Runtime 13.3 以降で動作します。
Databricks ノートブックを実行し、Visual Studio Code の Databricks 拡張機能の Databricks Connect 統合を使用して、一度に 1 つのセルまたはすべてのセルを一度に Visual Studio Code IDE で結果を確認できます。 すべてのコードはローカルで実行されますが、DataFrame 操作に関連するすべてのコードはリモート Databricks ワークスペースのクラスターで実行され、実行応答はローカルの呼び出し元に送り返されます。 セルをデバッグすることもできます。 すべてのコードはローカルでデバッグされますが、すべての Spark コードはリモート Databricks ワークスペースのクラスターで引き続き実行されます。 コア Spark エンジン コードをクライアントから直接デバッグすることはできません。
既定では、この記事で説明する Databricks Connect 統合がない場合、ノートブックの使用は制限されます。
Visual Studio Code の Databricks 拡張機能のみを使用して、一度に 1 つのセルでノートブックを実行することはできません。
セルをデバッグすることはできません。
ノートブックは Databricks ジョブとしてのみ実行でき、Visual Studio Code IDE ではノートブックの実行結果のみを表示できます。
すべてのノートブック コードは、これらのジョブに関連付けられているクラスターでのみ実行されます。
Visual Studio Code の Databricks 拡張機能でノートブックの Databricks Connect 統合を有効にするには、Visual Studio Code の Databricks 拡張機能で Databricks Connect 統合を有効にする必要があります。 Visual Studio Code の Databricks 拡張機能については、「Databricks Connect を使用したコードのデバッグ」を参照してください。
有効にした後、ファイル名に .py
拡張子を持つノートブックの場合、Visual Studio Code IDE でノートブックを開くと、各セルに [セル を実行]、[ 上で実行]、および [ セルのデバッグ] ボタンが表示されます。 セルを実行すると、その結果が IDE の別のタブに表示されます。 デバッグ中は、デバッグ中のセルに [続行]、[停止]、および [ステップ オーバー] ボタンが表示されます。セルをデバッグするときに、変数の状態の監視、呼び出し履歴とデバッグ コンソールの表示など、Visual Studio Code のデバッグ機能を使用できます。
有効にした後、ファイル名に .ipynb
拡張子を持つノートブックの場合、Visual Studio Code IDE でノートブックを開くと、ノートブックとそのセルに追加機能が含まれます。 「セルの実行」および「ノートブック エディターでのコード セルの操作」を参照してください。
.py
および .ipynb
拡張子を持つファイル名のノートブック形式の詳細については、「Databricks ノートブックのエクスポートとインポート」を参照してください。
次のノートブック グローバルも有効になります。
spark
のインスタンスを表すdatabricks.connect.DatabricksSession
は、拡張機能から Databricks 認証資格情報を取得することによってDatabricksSession
インスタンス化するように事前に構成されています。 ノートブック セルのコードでDatabricksSession
が既にインスタンス化されている場合は、代わりにこのDatabricksSession
設定が使用されます。 Databricks Connect for Python のコード例を参照してください。udf
は、Python UDF のエイリアスであるpyspark.sql.functions.udf
のエイリアスとして事前構成されています。 PySpark.sql.functions.udf を参照してください。sql
、spark.sql
のエイリアスとして事前構成されています。spark
は、前述のように、databricks.connect.DatabricksSession
の事前構成済みインスタンスを表します。 Spark SQL に関するページを参照してください。dbutils
は、databricks-sdk
からインポートされ、拡張機能から Databricks 認証資格情報を取得することによってインスタンス化される Databricks ユーティリティのインスタンスとして事前構成されています。 「 Databricks ユーティリティの使用」を参照してください。注:
Databricks Connect を使用したノートブックでは、Databricks ユーティリティのサブセットのみがサポートされています。
dbutils.widgets
を有効にするには、まずローカル開発マシンのターミナルで次のコマンドを実行して、Python 用の Databricks SDK をインストールする必要があります。pip install 'databricks-sdk[notebook]'
display
は、Jupyter 組み込みIPython.display.display
のエイリアスとして事前構成されています。 IPython.display.display を参照してください。displayHTML
は、dbruntime.display.displayHTML
のエイリアスとして事前設定されています。これは、ipython
からのdisplay.HTML
のエイリアスです。IPython.display.html を参照してください。
次のノートブックマジックも有効になります。
%fs
これは、dbutils.fs
呼び出しを行うのと同じです。 言語を混在させるを参照してください。%sh
これは、ローカルマシン上のセルマジック%%script
を使用してコマンドを実行します。 これにより、リモートの Databricks ワークスペースでコマンドは実行されません。 言語を混在させるを参照してください。%md
%md-sandbox
は、セルマジック%%markdown
を実行します。言語を混在させるを参照してください。%sql
これは、spark.sql
を実行します。 言語を混在させるを参照してください。%pip
これは、ローカルマシン上でpip install
実行されます。 これは、リモートの Databricks ワークスペースではpip install
実行されません。 「%pip コマンドによるライブラリの管理」を参照してください。%run
、別のノートブックを実行します。 このノートブックのマジックは、Visual Studio Code バージョン 1.1.2 の Databricks 拡張機能で使用できます 以上。 「 別のノートブックから Databricks ノートブックを実行する」を参照してください。# MAGIC
.このノートブックのマジックは、Visual Studio Code バージョン 1.1.2 の Databricks 拡張機能で使用できます 以上。
有効になる追加機能は次のとおりです。
Spark DataFrames は pandas DataFramesに変換され、Jupyter テーブル形式で表示されます。
制限事項は次のとおりです。
ノートブックのマジック
%r
と%scala
はサポートされておらず、呼び出されるとエラーが表示されます。 言語を混在させるを参照してください。ノートブック マジック
%sql
では、[ テーブルの表示] などの一部の DML コマンドはサポートされていません。