可以直接在工作区中创建和修改 Databricks 资产捆绑包。
有关在工作区中使用捆绑包的要求,请参阅 工作区要求中的 Databricks 资产捆绑包。
有关捆绑包的详细信息,请参阅 什么是 Databricks 资产捆绑包?。
创建捆绑包
若要在 Databricks 工作区中创建捆绑包,请执行以下作业:
导航到要在其中创建捆绑包的 Git 文件夹。
单击“创建”按钮,然后单击“资产捆绑”。 或者,右键单击工作区树中的 Git 文件夹或其关联的 kebab,然后单击“ 创建>资产捆绑包”:
在 “创建资产捆绑包 ”对话框中,为资产捆绑包命名,例如 完全真棒捆绑包。 捆绑名称只能包含字母、数字、短划线和下划线。
对于 模板,请选择是要创建空捆绑包、运行示例 Python 笔记本的捆绑包还是运行 SQL 的捆绑包。 如果已启用 Lakeflow 管道编辑器 ,则还将看到用于创建 ETL 管道项目的选项。
某些模板需要其他配置。 单击“ 下一步 ”完成项目配置。
Template 配置选项 Lakeflow Spark 声明性管道 - 用于管道数据的默认目录
- 建议为每个协作的用户使用个人软件架构来处理此软件包。
- 管道中代码文件的初始语言
默认 Python - 包括示例笔记本
- 包括示例管道
- 包括示例 Python 包
- 使用无服务器计算
默认 SQL - SQL 仓库路径
- 初始目录
- 使用个人架构
- 开发期间的初始架构
单击“ 创建并部署”。
这会在 Git 文件夹中创建一个初始捆绑包,其中包括所选项目模板的文件、 .gitignore Git 配置文件和所需的 Databricks 资产捆绑包 databricks.yml 文件。 该文件 databricks.yml 包含捆绑包的主配置。 有关详细信息,请参阅 Databricks 资产捆绑包配置。
对捆绑包中文件所做的任何更改都可以与与 Git 文件夹关联的远程存储库同步。 Git 文件夹可以包含许多捆绑包。
将新文件添加到捆绑包
一个捆绑包包含 databricks.yml 文件,这个文件定义了部署和工作区配置,以及源文件(如笔记本、Python 文件和测试文件),还有 Databricks 资源的定义和设置,例如 Lakeflow 作业和 Lakeflow Spark 声明性管道。 与任何工作区文件夹类似,可以将新文件添加到捆绑包。
小窍门
若要打开捆绑包视图的新选项卡,以便修改捆绑文件,请导航到工作区中的捆绑文件夹,然后单击捆绑名称右侧的编辑器中 打开 。
添加源代码文件
若要将新笔记本或其他文件添加到工作区 UI 中的捆绑包,请导航到捆绑文件夹,然后:
- 单击右上角的“ 创建 ”,选择要添加到捆绑包的以下文件类型之一:Notebook、File、Query、Dashboard。
- 或者,单击 共享 左侧的烤肉串并导入文件。
注释
为了使文件成为捆绑部署的一部分,将文件添加到捆绑包文件夹中后,必须将该文件添加到 databricks.yml 捆绑包配置,或创建包含它的作业或管道定义文件。 请参阅 将现有资源添加到捆绑包。
添加作业定义
捆绑包包含要在部署中包含的资源(如作业和管道)的定义。 这些定义在 YAML 或 Python 中指定,可以直接在 UI 中创建和编辑这些配置。
若要创建定义作业的捆绑配置文件,请执行以下作:
导航到要在其中定义新作业的工作区中的捆绑文件夹。
小窍门
如果以前在工作区的编辑器中打开捆绑包,则可以使用工作区浏览器创作上下文列表导航到捆绑包文件夹。 请参阅 创作上下文。
在捆绑名称右侧,单击 “在编辑器中打开 ”以导航到捆绑编辑器视图。
单击捆绑包的部署图标以切换到 “部署 ”面板。
在 “捆绑资源 ”部分中,单击“ 添加”,然后单击 “新建作业定义”。
在“创建作业定义”对话框的“作业名称”字段中键入作业的名称。 单击 “创建” 。
将 YAML 添加到已创建的作业定义文件。 示例 YAML 定义运行笔记本的作业:
resources: jobs: run_notebook: name: run-notebook queue: enabled: true tasks: - task_key: my-notebook-task notebook_task: notebook_path: ../helloworld.ipynb
有关在 YAML 中定义作业的详细信息,请参阅 作业。 有关其他支持的作业任务类型的 YAML 语法,请参阅 在 Databricks 资产捆绑包中向作业添加任务。
添加管道
若要将管道添加到捆绑包,请执行以下步骤:
导航到要在其中定义新管道的工作区中的捆绑文件夹。
小窍门
如果以前在工作区的编辑器中打开捆绑包,则可以使用工作区浏览器创作上下文菜单导航到捆绑包文件夹。 请参阅 创作上下文。
在捆绑名称右侧,单击 “在编辑器中打开 ”以导航到捆绑编辑器视图。
单击捆绑包的部署图标以切换到 “部署 ”面板。
在“捆绑资源”部分,单击“添加”,然后在工作区中启用 Lakeflow 管道编辑器时,单击“新建管道定义”或“新建 ETL 管道”。 这两个选项的管道创建体验有所不同。
创建管道定义
如果从捆绑资源创建菜单中选择了 “新建管道定义 ”:
- 在“将管道添加到现有捆绑包”对话框的“管道名称”字段中,键入管道的名称。
- 单击“ 添加并部署”。
对于运行笔记本的管道名为 test_pipeline,会在文件 test_pipeline.pipeline.yml 中创建以下 YAML:
resources:
pipelines:
test_pipeline:
name: test_pipeline
libraries:
- notebook:
path: ../test_pipeline.ipynb
serverless: true
catalog: main
target: test_pipeline_${bundle.environment}
可以修改配置以运行现有笔记本。 有关在 YAML 中定义管道的详细信息,请参阅 管道。
创建 ETL 管道
如果从捆绑资源创建菜单中选择了 “新建 ETL 管道 ”:
在“将管道添加到现有捆绑包”对话框的“名称”字段中,键入管道的名称。 该名称在工作区中必须是唯一的。
对于“使用个人模式”字段 ,开发场景请选择“是” ,生产场景请选择“否”。
选择管道 的默认目录 和 默认架构 。
为管道源代码选择语言。
单击“ 添加并部署”。
查看 部署到开发确认对话框中的详细信息,然后单击部署。
使用示例浏览和转换表创建 ETL 管道。
对于名称为 rad_pipeline 的管道,将在文件 rad_pipeline.pipeline.yml 中创建以下 YAML。 此管道配置为在无服务器计算上运行。
resources:
pipelines:
rad_pipeline:
name: rad_pipeline
libraries:
- glob:
include: transformations/**
serverless: true
catalog: main
schema: ${workspace.current_user.short_name}
root_path: .
将现有资源添加到捆绑包
可以将现有资源(如管道)以及笔记本和其他源文件等资产添加到捆绑包。 但是,必须在捆绑配置中定义它们,将其包含在捆绑包部署中。 以下示例将现有管道添加到捆绑包。
假设你在共享工作区中有一个名为 taxifilter 的管道,用于运行 taxifilter.ipynb 笔记本:
在 Azure Databricks 工作区的边栏中,单击作业和管道。
(可选)选择 “流水线” 和 “我拥有” 筛选条件。
选择现有
taxifilter管道。在管道页中,单击 开发 部署模式按钮左侧的 kebab。 然后单击“ 查看设置 YAML”。
单击复制图标以复制管道的捆绑配置。
导航到 工作区中的捆绑包。
单击捆绑包的部署图标以切换到 “部署 ”面板。
在 “捆绑资源 ”部分中,单击“ 添加”,然后单击 “新建管道定义”。
注释
如果改为看到 “新建 ETL 管道 ”菜单项,则已启用 Lakeflow 管道编辑器 。 若要将 ETL 管道添加到捆绑包,请参阅 “创建源代码管理管道”。
键入
taxifilter“将管道添加到现有捆绑包”对话框的“管道名称”字段。 单击 “创建” 。将现有管道的配置粘贴到文件中。 此示例管道被定义为运行
taxifilter笔记本。resources: pipelines: taxifilter: name: taxifilter catalog: main libraries: - notebook: path: /Workspace/Shared/taxifilter.ipynb target: taxifilter_${bundle.environment}
现在可以部署捆绑包,然后通过 UI 运行管道资源。