メインコンテンツまでスキップ

サーバレス環境の設定

この記事では、サーバーレス ノートブックの 環境 サイド パネルを使用して、依存関係、サーバーレス使用方針、メモリ、および基本環境を構成する方法について説明します。 このパネルは、ノートブックのサーバーレス設定を管理する単一の場所を提供します。 このパネルで構成された設定は、ノートブックがサーバレス コンピュートに接続されている場合にのみ適用されます。

環境 サイド パネルを展開するには、ノートブックの右側にある [環境] ボタンをクリックします。

サーバーレス環境パネル

サーバレス GPU コンピュートの使用

備考

ベータ版

サーバレス GPU コンピュートは ベータ版です。

次の手順を使用して、 Databricks ノートブックでサーバレス GPU コンピュートを使用します。

  1. ノートブックから、上部の [接続 ] ドロップダウン メニューをクリックし、 [サーバレス GPU] を選択します。
  2. クリック環境アイコン。 環境 サイドパネルを開きます。
  3. アクセラレータ フィールドから A10 または H100 を選択します。
  4. [基本環境] で、デフォルトの環境の場合は [標準] を選択し、機械学習ライブラリが事前にインストールされた AI 最適化環境の場合は [AI] を選択します。
  5. [適用] をクリックし、ノートブック環境にサーバレス GPU コンピュートを適用することを 確認します

詳細については、 サーバレス GPU コンピュートを参照してください。

メモリー容量の多いサーバレス コンピュートの利用

備考

プレビュー

この機能は パブリック プレビュー段階です。

ノートブックでメモリ不足エラーが発生した場合は、より高いメモリ サイズを使用するようにノートブックを構成できます。 この設定により、ノートブックでコードを実行するときに使用される REPL メモリのサイズが増加します。Spark セッションのメモリ サイズには影響しません。メモリの多いサーバレス使用量は、標準メモリよりも DBU 排出量が高くなります。

  1. ノートブック UI で、サイドパネルの [ 環境 ] 環境をクリックします。
  2. [メモリ] で [ ハイ メモリ ] を選択します。
  3. [適用] をクリックします。

この設定は、ノートブックのメモリ設定を使用して実行されるノートブック ジョブ タスクにも適用されます。ノートブックのメモリ設定を更新すると、次のジョブ実行に影響します。

サーバレス使用ポリシーを選択してください

備考

プレビュー

この機能は パブリック プレビュー段階です。

サーバーレス使用ポリシー:組織は、詳細な請求属性を得るために、サーバーレス使用量にカスタム タグを適用できます。

ワークスペースがサーバレス使用ポリシーを使用してサーバレス使用を属性にしている場合、ノートブックに適用するサーバレス使用ポリシーを選択できます。 ユーザーが 1 つのサーバーレス使用ポリシーにのみ割り当てられている場合、そのポリシーは無意識によって選択されます。

ノートブックがサーバレス コンピュートに接続された後、 [環境] サイド パネルを使用してサーバレス使用ポリシーを選択できます。

  1. ノートブック UI で、サイドパネルの [ 環境 ] 環境をクリックします。
  2. [使用ポリシー] で、ノートブックに適用するサーバーレス使用ポリシーを選択します。
  3. [適用] をクリックします。

この設定が完了すると、すべてのノートブックの使用は、サーバレス使用ポリシーのカスタム タグを継承します。

注記

あなたのノートブックがGitリポジトリからのものであるか、割り当てられたサーバレス使用ポリシーを持っていない場合、次にサーバレス コンピュートにアタッチされるときに、最後に選択したサーバレス使用ポリシーに自動的に適用されます。

ベース環境を選択する

基本環境によって、サーバレス ノートブックで使用できるプリインストールされたライブラリと環境のバージョンが決まります。 環境 サイド パネルの ベース環境 セレクターは、環境を選択するための統一されたインターフェイスを提供します。各環境バージョンの詳細については、 「サーバレス環境バージョン」を参照してください。 Databricks では、最新のノートブック機能を利用するために最新バージョンを使用することをお勧めします。

ベース環境 セレクターには次のオプションが含まれます。

  • Standard : Databricks が提供するライブラリを含むデフォルトの基本環境。

  • AI : 機械学習ライブラリがプリインストールされた AI に最適化された基本環境。このオプションは、アクセラレータ (GPU) が選択されている場合にのみ表示されます。

  • 詳細 : 展開して追加オプションを表示します。

    • 以前のバージョンの標準および AI 環境。
    • カスタム : YAML ファイルを使用してカスタム環境を指定できます。
  • ワークスペース環境 : 管理者によってワークスペース用に構成された互換性のあるすべての基本環境をリストします。

ベース環境を選択するには:

  1. ノートブック UI で、サイドパネルの [ 環境 ] 環境をクリックします。
  2. 「ベース環境」 の下で、ドロップダウン メニューから環境を選択します。
  3. [適用] をクリックします。

ノートブックに依存関係を追加する

サーバレスはコンピュート ポリシーや initスクリプトをサポートしていないため、 環境 サイドパネルを使用してカスタム依存関係を追加する必要があります。 依存関係を個別に追加することも、共有可能な基本環境を使用して複数の依存関係をインストールすることもできます。

依存関係を個別に追加するには:

  1. ノートブック UI で、サイドパネルの [ 環境 ] 環境をクリックします。

  2. 「依存関係 」セクションで、「 依存関係の追加 」をクリックし、フィールドに依存関係のパスを入力します。依存関係は、 requirements.txt ファイルで有効な任意の形式で指定できます。Python wheel ファイルまたは Python プロジェクト ( pyproject.tomlsetup.pyを含むディレクトリなど) は、ワークスペース ファイルまたは Unity Catalog ボリュームに配置できます。

    • ワークスペース ファイルを使用する場合、パスは絶対パスで、 /Workspace/で始まる必要があります。
    • Unity Catalog ボリューム内のファイルを使用する場合、パスは /Volumes/<catalog>/<schema>/<volume>/<path>.whl.
  3. 適用 をクリックします。これにより、ノートブックの仮想環境に依存関係がインストールされ、Python プロセスが再起動されます。

重要

PySpark や、サーバレス ノートブックへの依存関係として PySpark をインストールするライブラリはインストールしないでください。これを行うと、セッションが停止し、エラーが発生します。 これが発生した場合は、ライブラリを取り外し、 環境をリセットします。

インストールされている依存関係を表示するには、 環境 サイドパネルの インストール済み タブをクリックします。ノートブック環境の pip インストール ログは、パネルの下部にある pip ログ をクリックしても使用できます。

カスタム環境仕様の作成

カスタム環境仕様を作成して再利用できます。

  1. サーバレス ノートブックで、環境バージョンを選択し、インストールする依存関係を追加します。
  2. 環境パネルの下部にあるケバブメニューアイコン ケバブメニューアイコン。 をクリックし、「 環境のエクスポート」 をクリックします。
  3. 仕様をワークスペース ファイルまたは Unity Catalog ボリュームとして保存します。

ノートブックでカスタム環境仕様を使用するには、 ベース環境 ドロップダウンメニューから カスタムを 選択し、フォルダーアイコンを使用します。フォルダーアイコン。 YAML ファイルを選択します。

ワークスペース全体で共有する共通のユーティリティを作成する

次の例は、一般的なユーティリティをワークスペースファイルに保存し、それをサーバレスノートブックに依存関係として追加する方法を示しています。

  1. 次の構成でフォルダを作成します。プロジェクトのコンシューマーがファイル パスに適切なアクセス権を持っていることを確認します。

    Shell
    helper_utils/
    ├── helpers/
    │ └── __init__.py # your common functions live here
    ├── pyproject.toml
  2. 次のように pyproject.toml を入力します。

    Python
    [project]
    name = "common_utils"
    version = "0.1.0"
  3. init.pyファイルに関数を追加します。例えば:

    Python
    def greet(name: str) -> str:
    return f"Hello, {name}!"
  4. ノートブック UI で、サイドパネルの [ 環境 ] 環境アイコン。をクリックします。

  5. 「依存関係 」セクションで、「 依存関係の追加 」をクリックし、utilファイルのパスを入力します。たとえば、 /Workspace/helper_utilsのようになります。

  6. [適用] をクリックします。

これで、ノートブックで関数を使用できるようになりました。

Python
from helpers import greet
print(greet('world'))

これは次のように出力されます。

Hello, world!

環境の依存関係をリセットする

ノートブックがサーバレス コンピュートに接続されている場合、 Databricks はノートブックの仮想環境のコンテンツを自動的にキャッシュします。 つまり、通常、既存のノートブックを開くときに、非アクティブなために切断されているノートブックを [ 環境 ] サイド パネルで指定した Python 依存関係を再インストールする必要はありません。

Python 仮想環境のキャッシュは、ジョブにも適用されます。 ジョブが実行されると、必要な依存関係が既に使用可能であるため、その実行で完了したタスクと同じ依存関係のセットを共有するジョブのタスクは高速になります。

注記

サーバレスのジョブで使用されるカスタム Python パッケージの実装を変更する場合は、ジョブが最新の実装を選択できるように、バージョン番号も更新する必要があります。

サーバレス コンピュートに添付されたノートブックの [環境] サイド パネルで指定された依存関係を環境キャッシュをクリアし、新規インストールを実行するには、[ 適用] の横にある矢印をクリックし、[リセット] を [デフォルト] をクリックします。

コア ノートブックまたは Apache Spark 環境を壊したり変更したりするパッケージをインストールする場合は、問題のあるパッケージを削除してから、環境をリセットします。新しいセッションを開始しても、環境キャッシュ全体がクリアされるわけではありません。

デフォルトの Python パッケージリポジトリを構成する

ワークスペース 管理者は、ワークスペース内のプライベートまたは認証済みパッケージリポジトリを、サーバレス ノートブックとサーバレス ジョブの両方のデフォルト pip 設定として設定できます。 これにより、ユーザーは index-urlextra-index-urlを明示的に定義せずに、内部の Python リポジトリからパッケージをインストールできます。

手順については、ワークスペース管理者の「 デフォルト Python パッケージ リポジトリの構成」を参照してください。

ジョブタスクの環境を構成する

ノートブック、 Pythonスクリプト、 Python wheel 、 JAR 、またはdbtタスクなどのジョブ タスク タイプの場合、ライブラリの依存関係はサーバレス環境のバージョンから継承されます。 インストールされているライブラリのリストを表示するには、使用している環境バージョン の「 インストールされている Python ライブラリ」 または 「インストールされている Java および Scala ライブラリ」 セクションを参照してください。タスクにインストールされていないライブラリが必要な場合は、ワークスペース ファイル、 Unity Catalogボリューム、またはパブリック パッケージ リポジトリ からライブラリをインストールできます。

既存のノートブック環境を使用するノートブックの場合は、ノートブック環境を使用してタスクを実行するか、代わりにジョブレベルの環境を選択してそれを上書きできます。

備考

ベータ版

JARタスクに対するサーバレスコンピュートの使用はベータ版です。

ジョブタスクを作成または編集するときにライブラリを追加するには:

  1. 環境とライブラリ ドロップダウン メニューで、 デフォルト 環境の横にある編集アイコンをクリックするか、 + 新しい環境の追加 をクリックします。

    デフォルト環境の編集

  2. 環境バージョン ドロップダウンから環境バージョンを選択します。サーバレス環境のバージョンを参照してください。Databricks では、最新の機能を利用するために、最新バージョンを選択することをお勧めします。

  3. 環境の設定 ダイアログで、 + ライブラリの追加 をクリックします。

  4. ライブラリ の下のドロップダウン メニューから依存関係のタイプを選択します。

  5. ファイル パス テキスト ボックスに、ライブラリへのパスを入力します。

  • ワークスペース ファイル内の Python wheel の場合、パスは絶対パスで、/Workspace/ で始まる必要があります。

  • Python wheelボリューム内のUnity Catalog の場合、パスは/Volumes/<catalog>/<schema>/<volume>/<path>.whl である必要があります。

  • requirements.txtファイルの場合は、 PyPi を選択し、 -r /path/to/requirements.txtと入力します。

    タスクライブラリを追加する

  1. 別のライブラリを追加するには、 確認 または + ライブラリの追加 をクリックします。
  2. タスクを追加する場合は、[ タスクを作成 ] をクリックします。タスクを編集している場合は、[ タスクを保存 ] をクリックします。

ジョブタスクの基本環境

サーバーレス ジョブは、 Python 、 Python wheel 、およびノートブック タスクの YAML ファイルで定義されたカスタム ベース環境をサポートします。 ノートブック タスクの場合、ジョブの環境構成でカスタム ベース環境を選択するか、ワークスペース環境とカスタム ベース環境の両方をサポートするノートブック独自の環境設定を使用できます。いずれの場合も、タスクに必要な依存関係のみがランタイム時にインストールされます。