通过


将 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,使应用可跨环境移植。
  • 为目标应用不可用或返回错误的情况实现错误处理。
  • 监视目标应用的运行状况和可用性,尤其是在应用依赖于这些应用提供关键功能时。