サーバレス環境の設定
このページでは、ノートブックおよびジョブタスク向けのサーバレス環境の構成方法について説明します。ノートブックでは、 環境 サイド パネルを使用して、ベース環境を選択し、依存関係をインストールし、メモリを構成し、使用ポリシーを適用します。ジョブタスクについては、タスクを作成または編集するときに環境を設定します。
環境 サイドペインを展開するには、ノートブックの右側にある [] ボタンをクリックします。

ベース環境を選択する
ベース環境により、サーバレスノートブックで利用できるプリインストールされたライブラリと環境バージョンが決まります。 環境 パネルの 基本環境 セレクターで、環境を選択します。各環境バージョンの詳細については、「サーバレス環境のバージョン」を参照してください。Databricks では、最新のノートブック機能を利用するために、最新バージョンを選択することをお勧めします。
ベース環境 セレクターには次のオプションが含まれます。
-
Standard : Databricks が提供するライブラリを含むデフォルトの基本環境。
-
機械学習 :Databricks Runtime for 機械学習にPythonおよびシステムパッケージがプリインストールされた基本環境。この環境を使用して、従来の Databricks Runtime for Machine Learning ワークロードをサーバレス コンピュートに移行します。機械学習の基本環境を参照してください。
-
詳細 : 展開して追加オプションを表示します。
- スタンダード環境および機械学習環境の以前のバージョン
- カスタム :YAMLファイルを使用してカスタム環境を指定します。
-
ワークスペース環境 : 管理者によってワークスペース用に構成された互換性のあるすべての基本環境をリストします。
ベース環境を選択するには:
- ノートブック UI で、 環境 サイド パネル
をクリックします。
- **ベース環境**で、ドロップダウンメニューから環境を選択します。
- [適用] をクリックします。
ノートブックに依存関係を追加する
サーバレスはコンピュート ポリシーや initスクリプトをサポートしていないため、カスタム ライブラリの依存関係は 環境 サイド パネルを使用して追加する必要があります。依存関係を個別にインストールすることも、共有可能な基本環境を使用して複数の依存関係をインストールすることもできます。
Databricksはノートブックの仮想環境をキャッシュするため、ノートブックを再度開く際や、非アクティブ状態から復帰する際に、依存関係が再インストールされることはありません。同じ依存関係セットを共有するジョブタスクも、1つの実行内でこのキャッシュの恩恵を受けます。
依存関係を個別にインストールする
-
ノートブック UI で、 環境 サイド パネル
をクリックします。
-
「依存関係 」セクションで、「 依存関係の追加 」をクリックし、フィールドに依存関係のパスを入力します。依存関係は、 requirements.txt ファイルで有効な任意の形式で指定できます。Python wheel ファイルまたは Python プロジェクト (
pyproject.tomlやsetup.pyを含むディレクトリなど) は、ワークスペース ファイルまたは Unity Catalog ボリュームに配置できます。- ワークスペース ファイルを使用する場合、パスは絶対パスで、
/Workspace/で始まる必要があります。 - Unity Catalog ボリューム内のファイルを使用する場合、パスは
/Volumes/<catalog>/<schema>/<volume>/<path>.whl.
- ワークスペース ファイルを使用する場合、パスは絶対パスで、
-
[適用] をクリックして、依存関係をインストールし、Pythonプロセスを再起動します。
PySpark や、サーバレス ノートブックへの依存関係として PySpark をインストールするライブラリはインストールしないでください。これを行うと、セッションが停止し、エラーが発生します。 これが発生した場合は、ライブラリを取り外し、 環境をリセットします。
インストールされている依存関係を表示するには、**環境**サイドパネルで**インストール済み**タブをクリックします。ペインの下部にある pip ログ をクリックすると、ノートブック環境の pip インストール ログを確認できます。
ワークスペース管理者は、サーバレスノートブックとジョブのデフォルトのpipソースとして、プライベートまたは認証済みパッケージリポジトリを設定できます。これにより、ユーザーはindex-url または extra-index-url を指定せずに、内部リポジトリからパッケージをインストールできます。デフォルト Python パッケージ リポジトリを構成するを参照してください。
カスタム環境仕様の作成
カスタム環境仕様を作成して再利用できます。
- サーバレス ノートブックで、ベース環境を選択し、必要な依存関係をインストールします。
- 環境パネルの下部にあるケバブメニューボタン
をクリックし、**環境のエクスポート**をクリックします。
- 仕様をワークスペース ファイルまたは Unity Catalog ボリュームとして保存します。
カスタム環境仕様をノートブックで使用するには、「ベース環境」ドロップダウンメニューから「カスタム」を選択し、フォルダー を使用してYAMLファイルを選択します。
ワークスペース間で共有する共通ツールを作成
この例では、ユーティリティをワークスペースファイルに保存し、サーバレスノートブックの依存関係としてインストールします。
-
以下の構造でフォルダを作成します。他のユーザーがこのパスに読み取りアクセス権があることを確認してください:
Shellhelper_utils/
├── helpers/
│ └── __init__.py # your common functions live here
├── pyproject.toml -
次のように
pyproject.tomlを入力します。Python[project]
name = "common_utils"
version = "0.1.0" -
init.pyファイルに関数を追加します。例えば:Pythondef greet(name: str) -> str:
return f"Hello, {name}!" -
ノートブック UI で、 環境 サイド パネル
をクリックします。
-
「依存関係 」セクションで、「 依存関係の追加 」をクリックし、utilファイルのパスを入力します。たとえば、
/Workspace/helper_utilsのようになります。 -
[適用] をクリックします。
これで、ノートブックで関数を使用できるようになりました。
from helpers import greet
print(greet('world'))
これは次のように出力されます。
Hello, world!
メモリー容量の多いサーバレス コンピュートの利用
プレビュー
この機能は パブリック プレビュー段階です。
ノートブックでメモリ不足エラーが発生した場合は、より大きなメモリサイズを使用するようにノートブックを構成してください。このメモリサイズ設定では、ノートブックでコードを実行する際に使用されるREPLメモリのサイズを増やします。Sparkセッションのメモリサイズには影響を与えません。ハイメモリでのサーバレス利用は、標準メモリよりもDBU使用率が高いです。
使用可能なメモリ オプションは次のとおりです。
- 標準 : 合計メモリ 16 GB。
- 高 : 合計メモリ 32 GB。
ノートブックのメモリ設定を構成するには:
- ノートブック UI で、 環境 サイド パネル
をクリックします。
- [メモリ] で [ ハイ メモリ ] を選択します。
- [適用] をクリックします。
このメモリ設定は、ノートブックのメモリ設定を使用して実行されるノートブックジョブタスクにも適用されます。ノートブックでのメモリ設定の更新は、次のジョブ実行に影響します。
サーバレス使用ポリシーを選択してください
プレビュー
この機能は パブリック プレビュー段階です。
サーバーレス使用ポリシー:組織は、詳細な請求属性を得るために、サーバーレス使用量にカスタム タグを適用できます。
ワークスペースでサーバレス使用ポリシーを使用している場合は、ノートブックに適用するポリシーを選択します。ユーザーが1つのサーバレス使用ポリシーにのみ割り当てられている場合、そのポリシーがデフォルトで適用されます。
サーバレスコンピュートに接続した後、[ 環境 ] サイドパネルからポリシーを選択します。
- ノートブック UI で、 環境 サイド パネル
をクリックします。
- サーバーレス使用ポリシーノートブック に適用するサーバーレス使用ポリシーを選択します。
- [適用] をクリックします。
適用すると、すべてのノートブックの使用状況にポリシーのカスタムタグが適用されます。
あなたのノートブックがGitリポジトリからのものであるか、割り当てられたサーバレス使用ポリシーを持っていない場合、次にサーバレス コンピュートにアタッチされるときに、最後に選択したサーバレス使用ポリシーに自動的に適用されます。
ソースファイルのエクスポートに環境情報を含める
Pythonノートブックの場合、環境設定で [ソース ファイルのエクスポートに含める] を切り替えることができます。 有効にすると、基本環境と依存関係がPEP 723形式でソースファイルのエクスポートに保存されます。これは、ノートブックがGit フォルダーに保存されている場合や、ソース ファイルとしてダウンロードされている場合に、環境設定を永続化するのに役立ちます。
例えば、 Standard v5 を使用しているノートブックは、環境設定をファイルの先頭にインラインメタデータとしてエクスポートします:
# Databricks notebook source
# /// script
# [tool.databricks.environment]
# environment_version = "5"
# ///
print("Hello World!")
環境の依存関係をリセットする
ノートブックがサーバレスコンピュートに接続されている場合、Databricksはノートブックの仮想環境のコンテンツを自動的にキャッシュします。つまり、既存のノートブックを開くときに、使用していないために接続が切断された場合でも、通常、 [環境] サイドパネルで指定されているPythonの依存関係を再インストールする必要はありません。
Python 仮想環境のキャッシュはジョブにも適用されます。ジョブが実行されると、同じ実行内で完了したタスクと同じ依存関係のセットを共有するタスクは、キャッシュに必要な依存関係がすでに含まれているため、より速く終了します。
サーバレスのジョブで使用されるカスタム Python パッケージの実装を変更する場合は、ジョブが最新の実装を選択できるように、バージョン番号も更新する必要があります。
環境キャッシュをクリアし、サーバレス コンピュートにアタッチされたノートブックの 環境 サイド ペインで指定された依存関係の新規インストールを実行するには、 適用 の横にある矢印をクリックし、 デフォルトにリセット をクリックします。
コア ノートブックまたは Apache Spark 環境を壊したり変更したりするパッケージをインストールする場合は、問題のあるパッケージを削除してから、環境をリセットします。新しいセッションを開始しても、環境キャッシュ全体がクリアされるわけではありません。
ジョブタスクの環境を構成する
各ジョブタスクは、基本環境と指定する追加のライブラリを含む分離された環境で実行されます。ベース環境は、Python および Scala のランタイムバージョンと、プリインストールされたライブラリを設定します。タスクは、環境バージョンからインストールされたデフォルトのライブラリセットを継承します。含まれている内容を確認するには、使用している環境バージョン の「インストール済みのPythonライブラリ」または「インストール済みのJavaおよびScalaライブラリ」セクションを参照してください。
プリインストールされたライブラリを、ワークスペースファイル、Unity Catalog ボリューム、またはパブリックパッケージリポジトリからのライブラリで補うことができます。タスクに必要な依存関係のみがランタイムにインストールされます。
プレビュー
JARタスクに対するサーバレスコンピュートの使用はパブリックプレビュー中です。
ベータ版
マネージドベース環境の選択はベータ版です。 環境の構成 ダイアログの ベース環境 ドロップダウンでは、Databricks が提供する環境(Standard や 機械学習 など)またはワークスペースで構成された環境から選択できます。この機能がない場合は、代わりに**環境バージョン**ドロップダウンが表示されます。ワークスペース管理者は、 プレビュー ページからこの機能を有効にできます。

タスクタイプ別の環境構成
ジョブにおける環境の構成方法は、タスクタイプによって異なります。
- Notebook tasks
- Python script and Python wheel tasks
- Dbt tasks
- JAR tasks
ノートブックタスクのデフォルトは**ノートブック環境**です。これは、ノートブック自体の構成済みベース環境と依存関係を使用します。これをジョブレベルの環境で上書きできます。

ジョブレベルの環境を構成するには:
-
タスク構成で、 環境とライブラリ ドロップダウン メニューをクリックします。
-
「ジョブ環境」 で、 デフォルト の横にある鉛筆アイコンをクリックするか、 + 新しいジョブ環境を追加 をクリックします。
-
「**環境の構成**」ダイアログで、「**ベース環境**」ドロップダウンメニューから選択してください:
- Databricks 環境 : Standard および 機械学習 などの Databricks 提供オプションです。
- ワークスペース環境 : ワークスペース管理者によって構成されたカスタム環境。ワークスペースの基本環境を管理するを参照してください。
- その他 : 以前のバージョンと カスタム (YAMLファイルを指定)。
-
**依存関係**の下に、追加のライブラリを追加します。ライブラリは、requirements.txt ファイルで有効な任意の形式で指定することも、ワークスペースファイルまたは Unity Catalog ボリュームへの絶対パスを使用することもできます。
-
確認 をクリックします。
ワークスペースでジョブのプレビュー用ワークスペース基本環境が有効になっていない場合、 環境設定 ダイアログには、 基本環境 の代わりに 環境バージョン ドロップダウンが表示されます。
環境を設定するには、バージョンを選択し、 + ライブラリの追加 をクリックします。ワークスペース ファイルパス(/Workspace/で始まるもの)、Unity Catalog ボリュームパス(/Volumes/で始まるもの)、または要件ファイル参照(例: -r /Workspace/path/to/requirements.txt)を指定できます。
PythonスクリプトおよびPython wheel タスクには、環境の構成が必要です。

-
タスクの構成で、 環境とライブラリ の下の + 依存関係を追加 をクリックします。
-
「**環境の構成**」ダイアログで、「**ベース環境**」ドロップダウンメニューから選択してください:
- Databricks 環境 : Standard および 機械学習 などの Databricks 提供オプションです。
- ワークスペース環境 : ワークスペース管理者によって構成されたカスタム環境。ワークスペースの基本環境を管理するを参照してください。
- その他 : 以前のバージョンと カスタム (YAMLファイルを指定)。
-
**依存関係**の下に、追加のライブラリを追加します。
-
確認 をクリックします。
ワークスペースでジョブのプレビュー用ワークスペース基本環境が有効になっていない場合、 環境設定 ダイアログには、 基本環境 の代わりに 環境バージョン ドロップダウンが表示されます。
環境を設定するには、バージョンを選択し、 + ライブラリの追加 をクリックします。ワークスペース ファイルパス(/Workspace/で始まるもの)、Unity Catalog ボリュームパス(/Volumes/で始まるもの)、または要件ファイル参照(例: -r /Workspace/path/to/requirements.txt)を指定できます。
DBT タスクはライブラリ設定用にジョブレベルの環境を使用します。

ジョブレベルの環境を構成するには:
-
タスク構成で、 環境とライブラリ ドロップダウン メニューをクリックします。
-
**ジョブ環境**で、既存の環境の横にある鉛筆アイコンをクリックするか、**+新しいジョブ環境の追加**をクリックします。
-
「**環境の構成**」ダイアログで、「**ベース環境**」ドロップダウンメニューから選択してください:
- Databricks 環境 : Standard および 機械学習 などの Databricks 提供オプションです。
- ワークスペース環境 : ワークスペース管理者によって構成されたカスタム環境。ワークスペースの基本環境を管理するを参照してください。
- その他 : 以前のバージョンと カスタム (YAMLファイルを指定)。
-
**依存関係**の下に、追加のライブラリを追加します。ライブラリは、requirements.txt ファイルで有効な任意の形式で指定することも、ワークスペースファイルまたは Unity Catalog ボリュームへの絶対パスを使用することもできます。
-
確認 をクリックします。
ワークスペースでジョブのプレビュー用ワークスペース基本環境が有効になっていない場合、 環境設定 ダイアログには、 基本環境 の代わりに 環境バージョン ドロップダウンが表示されます。
環境を設定するには、バージョンを選択し、 + ライブラリの追加 をクリックします。ワークスペース ファイルパス(/Workspace/で始まるもの)、Unity Catalog ボリュームパス(/Volumes/で始まるもの)、または要件ファイル参照(例: -r /Workspace/path/to/requirements.txt)を指定できます。
ワークスペースの基本環境はJARタスクではサポートされていません。JARタスクの環境を構成するには

-
タスク設定で、**環境とライブラリ**の下にある**+ JAR 依存関係の追加**をクリックします。
-
**環境の設定**ダイアログで
- 必要に応じて、**ベース環境**フィールドにYAMLファイルのパスを入力します。
- 環境バージョン ドロップダウンから環境バージョンを選択します。
- 「JAR依存関係」 の下に、JARファイルへのパスを追加します。
-
確認 をクリックします。
カスタムYAMLベースの基本環境を作成するには、「カスタム環境仕様を作成する」をご覧ください。
環境とコンピュートの互換性
選択するベース環境は、タスクのコンピュートタイプと互換性がある必要があります。例えば、GPUコンピュート用に構築された環境は、CPUコンピュートと互換性がありません。ジョブ UI では、互換性のない環境はベース環境ドロップダウンメニューでは利用できません。
ノートブック タスクを構成する場合、コンピュート タイプ (CPU または GPU) と基本環境は、それぞれジョブ設定またはノートブック設定から取得できます。
- ジョブレベルでハードウェアアクセラレーター(GPU)を設定する場合、ジョブレベルでベース環境も選択する必要があります。ジョブレベルのアクセラレータでは、ノートブックの環境を使用できません。
- ノートブックを参照するジョブタスクがあり、参照先のノートブックのコンピュートタイプを更新すると (たとえば、CPU から GPU に)、既存のタスクが、構成されている環境と互換性がなくなる可能性があります。ノートブックのコンピュート構成を変更した後、ジョブの環境設定を確認してください。
- API ユーザーの場合: ジョブレベルでベース環境を設定し、ノートブックでコンピュートタイプを定義している場合、Databricks はジョブ作成時ではなくランタイム時に互換性を検証します。構成に互換性がない場合、実行はエラーで失敗します。