本文介绍使用工作区 UI 的 Lakeflow 声明性管道的基本配置。
Databricks 建议使用无服务器模式开发新的管道。 无服务器管道的配置说明。
本文中的配置说明使用的是 Unity Catalog。 有关使用旧 Hive 元存储配置管道的说明,请参阅 将 Lakeflow 声明性管道与旧 Hive 元存储配合使用。
本文讨论管道当前默认发布模式的功能。 在 2025 年 2 月 5 日之前创建的管道可能使用旧版发布模式和 LIVE
虚拟架构。 请参阅 LIVE 架构(旧版)。
注释
该 UI 有一个以 JSON 格式显示和编辑设置的选项。 可以使用 UI 或 JSON 规范配置大多数设置。 某些高级选项仅在使用 JSON 配置时才可用。
将管道部署到新环境或使用 CLI 或 REST API 时,JSON 配置文件也很有用。
有关 Lakeflow 声明性管道 JSON 配置设置的完整参考,请参阅 Lakeflow 声明性管道配置。
配置新管道
若要配置新管道,请执行以下操作:
在工作区中,单击边栏中的
作业和管道。
在 “新建”下,单击 “ETL 管道”。
提供唯一的“管道名称”。
(可选)使用
文件选取器将笔记本和工作区文件配置为 源代码。
- 如果未添加任何源代码,则为管道创建一个新笔记本。 笔记本是在用户目录中的新目录中创建的,创建管道后,“管道详细信息”窗格中的“源代码”字段中会显示用于访问此笔记本的链接。
- 创建管道后,可使用“管道详细信息”面板中的“源代码”字段下显示的 URL 访问此笔记本。
- 使用“添加源代码”按钮添加其他源代码资源。
- 如果未添加任何源代码,则为管道创建一个新笔记本。 笔记本是在用户目录中的新目录中创建的,创建管道后,“管道详细信息”窗格中的“源代码”字段中会显示用于访问此笔记本的链接。
选择“存储”选项下的 Unity 目录。
选择一个目录。 此设置控制管道元数据的默认目录和存储位置。
在目录中选择一个架构。 默认情况下,将在此架构中创建管道中定义的流式处理表和具体化视图。
在“计算”部分,勾选“使用 Photon 加速”旁边的框。 有关其他计算配置注意事项,请参阅 计算配置选项。
单击“ 创建”。
这些推荐配置会创建在“触发”模式下运行的新管道,并使用“当前”通道。 此配置适用于许多用例,包括开发和测试,并且非常适合按计划运行的生产工作负载。 有关调度管道的详细信息,请参阅 作业的管道任务。
计算配置选项
Databricks 建议始终使用“增强型自动缩放”。 其他计算配置的默认值适用于许多管道。
使用以下设置自定义计算配置:
工作区管理员可以配置“群集策略”。 计算策略允许管理员控制用户可使用的计算选项。 请参阅 “选择群集策略”。
可以选择配置“群集模式”,以“固定大小”或“旧版自动缩放”运行。 请参阅 使用自动缩放优化 Lakeflow 声明性管道的集群利用率。
对于已启用自动缩放的工作负载,设置“最小工作节点数”和“最大工作节点数”以设置缩放行为的限制。 请参阅 配置 Lakeflow 声明性管道的计算。
可以选择关闭 Photon 加速。 请参阅什么是 Photon?
使用 群集标记 来帮助监视与 Lakeflow 声明性管道相关的成本。 请参阅 “配置群集标记”。
配置实例类型以指定用于运行管道的虚拟机类型。 请参阅 “选择实例类型”以运行管道。
- 为管道中配置的工作负载选择优化后的“工作节点类型”。
- 可以选择一个与工作节点类型不同的驱动程序类型。 这对于在工作节点类型较大且驱动程序计算利用率较低的管道中降低成本,或者对于选择更大的驱动程序类型以避免在有许多小工作节点的工作负载中出现内存不足问题很有用。
其他配置注意事项
以下配置选项也可用于管道:
- 使用高级产品版本可以访问所有 Lakeflow 声明性管道功能。 可以选择使用专业版或核心版产品版本运行管道。 请参阅 “选择产品版本”。
- 在生产环境中运行管道时,可以选择使用连续管道模式。 请参阅触发式与连续式管道模式。
- 如果未为 Unity 目录配置工作区,或者工作负荷需要使用旧版 Hive 元存储,请参阅 将 Lakeflow 声明性管道与旧版 Hive 元存储配合使用。
- 根据成功或失败条件为电子邮件更新添加“通知”。 请参阅 为管道事件添加电子邮件通知。
- 使用“配置”字段设置管道的键值对。 这些配置有两个用途:
- 设置可在源代码中引用的任意参数。 请参阅 Lakeflow 声明性管道中的参数使用。
- 配置管道设置和 Spark 配置。 请参阅 Lakeflow 声明性管道属性参考指南。
- 配置 标记。 标记是管道的键值对,在工作流列表中可见。 管道标记与计费无关。
- 使用 预览 通道来测试您的管道,以检查待定的 Lakeflow 声明性管道运行时的更改并试用新功能。
选择产品版本
选择具有管道要求的最佳功能的 Lakeflow 声明性管道产品版本。 可以使用以下产品版本:
-
Core
,用于运行流式处理引入工作负载。 如果您的管道不需要高级功能,例如变更数据捕获(CDC)或 Lakeflow 声明性管道预期,请选择Core
版本。 -
Pro
,用于运行流式处理引入和 CDC 工作负载。Pro
产品版本支持所有Core
功能,此外还支持需要根据源数据的更改更新表的工作负载。 -
Advanced
,用于运行流式处理引入工作负载、CDC 工作负载,以及需要“期望”功能的工作负载。 产品Advanced
版本支持Core
和Pro
版本的功能,并包括带有 Lakeflow 声明性管道预期的数据质量约束。
在创建或编辑管道时可以选择产品版本。 可为每个管道选择不同的版本。 请参阅 Lakeflow 声明性管道产品页。
注意:如果管道包含所选产品版本不支持的功能(例如期望),你将收到说明出错原因的错误消息。 然后,可以编辑该管道以选择适当的版本。
配置源代码
可以使用 Lakeflow 声明性管道 UI 中的文件选择器来配置定义管道的源代码。 管道源代码在 Databricks 笔记本中定义,或者在工作区文件所存储的 SQL 或 Python 脚本中定义。 创建或编辑管道时,可以添加一个或多个笔记本或工作区文件,或者添加笔记本和工作区文件的组合。
由于 Lakeflow 声明性管道会自动分析数据集依赖项以构造管道的处理图,因此可以按任意顺序添加源代码资产。
可以修改 JSON 文件,以包括在 SQL 中定义的 Lakeflow 声明性管道源代码,以及存储在工作区文件中的 Python 脚本。 以下示例包含笔记本和工作区文件:
{
"name": "Example pipeline 3",
"storage": "dbfs:/pipeline-examples/storage-location/example3",
"libraries": [
{ "notebook": { "path": "/example-notebook_1" } },
{ "notebook": { "path": "/example-notebook_2" } },
{ "file": { "path": "/Workspace/Users/<user-name>@databricks.com/Apply_Changes_Into/apply_changes_into.sql" } },
{ "file": { "path": "/Workspace/Users/<user-name>@databricks.com/Apply_Changes_Into/apply_changes_into.py" } }
]
}
管理使用 Python 的管道的外部依赖项
Lakeflow 声明性管道支持在管道中使用外部依赖项,例如 Python 包和库。 若要了解使用依赖项的选项和建议,请参阅 管理 Lakeflow 声明性管道的 Python 依赖项。
使用存储在 Azure Databricks 工作区中的 Python 模块
除了在 Databricks 笔记本中实现 Python 代码外,还可以使用 Databricks Git 文件夹或工作区文件将代码存储为 Python 模块。 想要在多个管道或同一管道中的笔记本中使用通用功能时,将代码存储为 Python 模块特别有用。 若要了解如何将 Python 模块用于管道,请参阅 从 Git 文件夹或工作区文件导入 Python 模块。