次の方法で共有


Databricks アプリ リソースを Databricks アプリに追加する

別の Databricks アプリ をアプリのリソースとして追加して、デプロイされた他のアプリと通信できるようにします。 これにより、別のアプリの API の呼び出しや、複数のアプリ間でのワークフローの調整など、アプリ間の対話が可能になります。

Databricks アプリ リソースを追加する

アプリをリソースとして追加する前に、 アプリ リソースの前提条件を確認します

  1. アプリを作成または編集するときに、[ 構成 ] ステップに移動します。
  2. [ アプリ リソース ] セクションで、[ + リソースの追加] をクリックします。
  3. リソースの種類として Databricks アプリ を選択します。
  4. ワークスペースで使用可能なアプリからターゲット アプリを選択します。
  5. アプリの アクセス許可レベル を選択します。
    • 使用可能: 対象アプリを呼び出すための権限をアプリに付与します。 CAN USE特権に対応します。
  6. (省略可能)カスタム リソース キーを指定します。これは、アプリ構成でターゲット アプリを参照する方法です。 既定のキーは appです。

Databricks アプリ リソースを追加する場合:

  • Azure Databricks は、ターゲット アプリに対するアクセス許可をアプリのCAN USEに付与します。
  • アプリは、ターゲット アプリのエンドポイントを呼び出すことができます。

環境変数

アプリ リソースを使用してアプリをデプロイすると、Azure Databricks は、 valueFrom フィールドを使用して参照できる環境変数を介してターゲット アプリの名前 (その URL ではなく) を公開します。 ターゲット アプリの URL を取得するには、Azure Databricks SDK を使用して名前を解決します。

構成例:

env:
  - name: MY_OTHER_APP
    valueFrom: app # Use your custom resource key if different

アプリケーションでターゲット アプリの URL を解決するには:

import os
from databricks.sdk import WorkspaceClient

# Access the target app name from the environment variable
w = WorkspaceClient()
other_app = w.apps.get(name=os.environ["MY_OTHER_APP"])

# Get the target app's URL
url = other_app.url  # e.g. "https://my-other-app-12345.cloud.databricksapps.com"

詳細については、「 環境変数を使用してリソースにアクセスする」を参照してください。

Databricks アプリ リソースを削除する

アプリ リソースを削除すると、Databricks はターゲット アプリのアクセス許可セットから CAN USE アクセス許可を削除します。 アプリは、ターゲットアプリを呼び出したり、起動したりすることができなくなります。 ターゲット アプリ自体は変更されず、適切なアクセス許可を持つ他のユーザーやアプリケーションでも引き続き使用できます。

ベスト プラクティス

Databricks アプリ リソースを使用する場合は、次の点を考慮してください。

  • 環境変数と Azure Databricks SDK を使用して、URL をハードコーディングするのではなく、実行時にターゲット アプリの URL を解決し、環境間でアプリの移植性を維持します。
  • ターゲット アプリが使用できない場合やエラーを返す場合に、エラー処理を実装します。
  • ターゲット アプリの正常性と可用性を監視します。特に、アプリが重要な機能に依存している場合。