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

環境を使用して依存関係を管理する

備考

ベータ版

この機能はベータ版です。アカウント管理者は、アカウント コンソールの [プレビュー] ページから、 [Environments for Standard Compute] トグルを使用してこの機能へのアクセスを制御できます。Databricksのプレビューを管理するを参照してください。

クラシックコンピュートでは、 Environments 依存関係モードを使用することで、コンピュートスコープのライブラリをインストールする代わりに、ベース環境を使用してワークロードレベルで依存関係を管理できます。これは Serverless コンピュートで使用されているものと同じモデルです。

環境設定はコンピュートレベルの変更から分離されているため、コンピュートが変更されてもワークロードが中断されることはありません。また、Databricksはベース環境をキャッシュするため、Startup時に依存関係の解決やインストールが行われません。これにより、コンピュートの起動が高速化され、パッケージの解決、リポジトリの可用性、ネットワークの信頼性に起因する障害を回避できます。

Environments 依存関係モードを使用するコンピュートに接続した後、ノートブックの [Environment] サイドペインからベース環境を選択し、依存関係を追加できます。ノートブックでの環境の使用を参照してください。

要件

依存関係モードの設定は、次の要件を満たすコンピュートでのみ利用可能です:

  • Databricks Runtime 19 (Beta) 以降
  • 標準アクセスモード
  • 対話型ノートブックで実行される汎用コンピュート

サポートの詳細については、「制限事項」を参照してください。

依存関係モードを設定する

環境 依存関係モードを使用するコンピュートを作成するには:

  1. ワークスペースのサイドバーで コンピュートアイコンコンピュート 」をクリックし、「 汎用コンピュート 」 tab を開きます。

  2. コンピュートを作成 をクリックします。

  3. パフォーマンス で、Databricks Runtimeバージョン ドロップダウンメニューから 19 Beta 以降を選択します。

  4. 詳細設定 セクションを展開し、 依存関係 をクリックします。

  5. 依存関係モード については、 [自動] を選択したままにして Databricks にモードを解決させるか、 [手動] をクリックして [環境] を選択し、自分で設定します。依存関係モードのオプションを参照してください。

    コンピュート作成フォームの [Advanced] セクションにある [Dependencies] tab。依存関係モードは [Auto] に設定され、[Environments] に解決されます。

  6. 残りのコンピュート設定を構成し、 [作成] をクリックします。

コンピュートが実行されたら、ノートブックをアタッチし、ノートブックでの環境の使用で説明されているように環境を構成します。

依存関係モードのオプション

依存関係モード コントロールには、モードの選択方法を決定する 2 つの設定があります:

  • 自動 :コンピュート構成に基づいてDatabricksがモードを解決します。コンピュートでDocker、Spark環境変数、またはinitスクリプトが指定されていない限り、自動的に 環境 に解決されます。指定されている場合は、 クラスターライブラリ に解決されます。
  • 手動 : 環境 または クラスター ライブラリ を自分で選択します。

[Manual] を選択する場合は、ニーズに合ったモードを選択してください。

  • Environments : ベース環境を使用してワークロードレベルで依存関係を管理します。クラスターライブラリ、Docker、Spark環境変数、およびinitスクリプトは無効になっています。Serverlessコンピュートと一致する、一貫性のあるポータブルな依存関係エクスペリエンスを実現するには、このモードを使用してください。
  • クラスターライブラリ :従来の動作。クラスターライブラリ、initスクリプト、またはDockerを使用して、コンピュート上に依存関係をインストールします。ワークロードでこれらの設定のいずれかが必要な場合は、このモードを使用してください。

既存のコンピュートを更新する

既存のコンピュートの設定を編集している場合、initスクリプト、クラスターライブラリ、Dockerなどの互換性のない設定がコンピュートにあると、 環境 モードへの切り替えはブロックされます。互換性のない設定を先に削除すれば、依存関係モードを編集できるようになります。

環境 モードから クラスターライブラリ モードに切り替えると、アタッチされているノートブックは環境の選択を保持しますが、それらの選択は非アクティブになります。コンピュートを 環境 モードに戻すと、それらの選択が再びアクティブになります。

ノートブックでの環境の使用

ノートブックで環境を使用するには、 Environments 依存関係モードを使用するクラシックコンピュートリソースにノートブックをアタッチします。ノートブックをアタッチした後、Serverlessコンピュートの場合と同じ方法で、 環境 サイドパネル 環境 からノートブックの依存関係を構成できます。

「Environments」依存関係モードを使用するクラシックコンピュート上の「Environment」サイドペインから、ノートブックの環境を構成します。

基本環境を選択します

ベース環境により、ノートブックで使用可能なプリインストール済みのライブラリと環境バージョンが決まります。 環境 サイドペインにある ベース環境 セレクターで、環境を選択します。Databricks では、最新のノートブック機能を利用するために、最新バージョンを使用することをお勧めします。各環境バージョンの詳細については、環境バージョンを参照してください。

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

  • 標準 :Databricksが提供するライブラリを含むdefaultの基本環境。

  • 機械学習 :Databricks Runtime for Machine LearningのPythonパッケージとシステムパッケージがプリインストールされた基本環境。

  • その他 :展開して追加オプションを表示します:

    • Standard および 機械学習 環境の以前のバージョン。
    • カスタム : YAML ファイルを使用してカスタム環境を指定します。
  • ワークスペース環境 : ワークスペース管理者によってワークスペース用に構成された、互換性のあるすべての基本環境を一覧表示します。

ノートブックへの依存関係の追加

Databricksはノートブックの仮想環境をキャッシュするため、ノートブックを再度開くたびや、非アクティブ状態から再開するたびに依存関係を再インストールする必要はありません。

依存関係を個別にインストールするには:

  1. 依存関係 セクションで、フィールドに依存関係のパスを入力し、 +依存関係の追加 をクリックします。依存関係は、 requirements.txt ファイルで有効な任意の形式で指定できます。Python wheel files or Python projects (for example, the directory containing a pyproject.toml or a setup.py) can be located in workspace files or Unity Catalog volumes.

    • ワークスペースファイルを使用する場合、パスは絶対パスであり、/Workspace/ で始まる必要があります。
    • Unity Catalogボリューム内のファイルを使用する場合、パスは次の形式である必要があります:/Volumes/<catalog>/<schema>/<volume>/<path>.whl
  2. [適用] をクリックして依存関係をインストールし、Pythonプロセスを再起動します。

重要

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

インストールされている依存関係を表示するには、 環境 サイドパネルの インストール済み tab をクリックします。パネル下部の pip Logs をクリックして、ノートブック環境のpipインストールLogsを開きます。

制限事項

環境 依存関係モードは、インタラクティブノートブックでのPythonワークロードと依存関係をサポートします。次の制限が適用されます:

  • 従来のジョブでは Environments 依存関係モードは使用されません。ジョブが Environments モードを指定する従来の汎用コンピュートで実行される場合、その設定は無視され、代わりにジョブは Cluster libraries モードで実行されます。
  • %scala コードはサポートされておらず、失敗します。
  • Rのサポートなしを含め、すべての標準アクセスモードの制限が適用されます。標準コンピュートの要件と制限を参照してください。
  • 現在、コンピュートポリシーを使用して依存関係モードの設定を適用することはできません。

互換性のない設定

依存関係モードが [環境] の場合、以下のコンピュート設定は無効になります。

  • Docker (Databricks Container Services)
  • Spark環境変数
  • initスクリプト
  • クラスターライブラリ