生成资源包时,您可能需要包括那些已经存在且在远程工作区中已完全配置的 Databricks 资源。 可以使用 Databricks CLI bundle generate
命令在捆绑包中快速自动生成现有应用、仪表板、作业和管道的配置。 请参阅 “生成捆绑包配置文件”。 在 Databricks UI 中,可以获取某些资源(如作业和管道)的配置,此配置可以复制并手动粘贴到捆绑资源配置文件中。
为捆绑包中的资源生成配置并部署捆绑包后,使用命令将 bundle deployment bind
捆绑包中的资源绑定到工作区中的相应资源。 请参阅绑定捆绑资源。
本页提供了使用 Databricks CLI 或 UI 生成或检索捆绑资源配置的简单示例。
有关捆绑包中的资源定义的详细信息,请参阅 Databricks 资产捆绑包资源。
使用 Databricks CLI 生成现有作业或管道配置
若要以编程方式为现有作业或管道生成捆绑配置,请执行以下作:
从 UI 中作业或管道的 作业详细信息 或 管道详细信息 端面板中检索现有作业或管道的 ID。 或者,使用 Databricks CLI
databricks jobs list
或databricks pipelines list-pipelines
命令。运行
bundle generate job
或执行bundle generate pipeline
Databricks CLI 命令,并设置作业或管道 ID:databricks bundle generate job --existing-job-id 6565621249
databricks bundle generate pipeline --existing-pipeline-id 6565621249
此命令为捆绑包文件夹中
resources
的资源创建捆绑配置文件,并将任何引用的项目下载到该src
文件夹中。
还可以为现有仪表板生成配置。 请参阅 “生成仪表板配置”。
使用 UI 检索现有作业定义
若要从 Azure Databricks 工作区 UI 检索现有作业定义的 YAML 表示形式:
在 Azure Databricks 工作区的边栏中,单击“工作流”。
在“作业”选项卡上,单击作业的“名称”链接。
在“ 立即运行 ”按钮旁边,单击烤肉串,然后单击“ 编辑为 YAML”。
复制 YAML 并将其添加到捆绑包的
databricks.yml
文件中,或者在捆绑项目的resources
目录中为您的作业创建一个配置文件,并在databricks.yml
文件中引用它。 查看资源。下载并将现有作业中引用的所有 Python 文件和笔记本添加到捆绑包的项目源代码中。 通常捆绑项目位于
src
捆绑包中的目录中。小窍门
可以通过单击 Azure Databricks 笔记本用户界面中的>,将现有笔记本从 Azure Databricks 工作区导出为 格式。
将笔记本、Python 文件和其他项目添加到捆绑包后,请确保作业定义正确引用它们。 例如,对于位于捆绑包的
hello.ipynb
目录中名为src
的笔记本:resources: jobs: hello-job: name: hello-job tasks: - task_key: hello-task notebook_task: notebook_path: ../src/hello.ipynb
有关在 UI 中以代码的形式查看作业的详细信息,请参阅 “以代码的形式查看作业”。
使用 UI 检索现有管道定义
若要从 Azure Databricks 工作区 UI 检索现有管道定义的 YAML 表示形式:
在 Azure Databricks 工作区的边栏中,单击“工作流”。
在 DLT 选项卡上,单击 管道名称链接。
单击“开发”按钮旁的串形图标,然后单击“查看设置 YAML”。
单击复制图标,将 管道设置 YAML 对话框的管道定义 YAML 复制到本地剪贴板。
将复制的 YAML 添加到您捆绑项目的
databricks.yml
文件中,或者在捆绑项目的resources
文件夹中为流程创建一个配置文件,并在您的databricks.yml
文件中引用它。 查看资源。下载并添加引用捆绑包项目源的任何 Python 文件和笔记本。 通常捆绑项目位于
src
捆绑包中的目录中。小窍门
可以通过单击 Azure Databricks 笔记本用户界面中的>,将现有笔记本从 Azure Databricks 工作区导出为 格式。
将笔记本、Python 文件和其他制品添加到捆绑包后,请确保流水线定义正确引用它们。 例如,对于位于捆绑包的
hello.ipynb
目录中名为src/
的笔记本:resources: pipelines: hello-pipeline: name: hello-pipeline libraries: - notebook: path: ../src/hello.ipynb
将资源绑定到其远端对应方
通常,将资源添加到捆绑包后,需要确保捆绑包中的资源以及工作区中的现有资源保持同步。使用 bundle deployment bind
此命令可以链接它们。 如果绑定一个资源,则会在下一 bundle deploy
次根据捆绑包中定义的配置更新工作区内关联的 Azure Databricks 资源。 有关支持 bundle deployment bind
的资源列表,请参阅 绑定包资源。
例如,以下命令将资源 hello_job
绑定到工作区中的远程对应资源。 它会提示进行确认,以确保在下次部署捆绑包时应将捆绑包中的作业配置更新应用到相应的远程作业。
databricks bundle deployment bind hello_job 6565621249
若要删除捆绑资源与其工作区中的对应资源之间的链接,请使用 bundle deployment unbind
。 请参阅 解绑捆绑资源。
databricks bundle deployment unbind 6565621249