在本地开发环境中开发 Delta Live Tables 管道代码
除了在 Azure Databricks 工作区中使用笔记本或文件编辑器来实现使用 Delta Live Tables Python 接口的管道代码外,还可以在本地开发环境中开发代码。 例如,可以使用你喜爱的集成开发环境 (IDE),例如 Visual Studio Code 或 PyCharm。 在本地编写管道代码后,可以手动将其移动到你的 Azure Databricks 工作区,或使用 Databricks 工具操作管道,包括部署和运行管道。
本文介绍可用于在本地开发 Python 管道并将这些管道部署到 Azure Databricks 工作区的工具和方法。 另外还提供了关于这些工具的用法和方法的更多详细信息的文章链接。
在你的 IDE 中获取语法检查、自动完成和类型检查
Databricks 提供可在本地环境中安装的 Python 模块,以帮助开发 Delta Live Tables 管道的代码。 本模块包含接口和 Delta Live Tables Python 接口的文档字符串引用,在你编写代码时在你的 IDE 中提供语法检查、自动完成和数据类型检查。
此模块包含接口,但没有功能实现。 不能使用此库在本地创建或运行 Delta Live Tables 管道。 请改用下面所述的方法之一来部署代码。
PyPI 上提供了用于本地开发的 Python 模块。 有关安装和使用说明,请参阅 Delta Live Tables 的 Python 存根。
使用 Databricks 资产捆绑包验证、部署和运行管道代码
实现 Delta Live Tables 管道代码后,Databricks 建议使用 Databricks 资产捆绑包来操作代码。 Databricks 资产捆绑包为管道开发生命周期提供 CI/CD 功能,包括验证管道工件、打包所有管道工件(如源代码和配置)、将代码部署到 Azure Databricks 工作区,以及启动管道更新。
若要了解如何创建捆绑包以使用 Databricks 资产捆绑包管理管道代码,请参阅使用 Databricks 资产捆绑包开发 Delta Live Tables 管道。
在你的 IDE 中开发和同步管道代码
如果你使用 Visual Studio Code IDE 进行开发,则可以使用 Python 模块开发代码,然后使用 Visual Studio Code 的 Databricks 扩展将代码直接从 Visual Studio Code 同步到你的工作区。 请参阅什么是 Visual Studio Code 的 Databricks 扩展?。
若要了解如何通过 Visual Studio Code 的 Databricks 扩展使用同步到你的工作区的代码创建管道,请参阅从 Git 文件夹或工作区文件导入 Python 模块。
手动将管道代码同步到你的 Azure Databricks 工作区
可以不使用 Databricks 资产捆绑包或 Visual Studio Code 的 Databricks 扩展创建捆绑包,而是将代码同步到你的 Azure Databricks 工作区,然后使用该代码在工作区中创建管道。 在开发和测试阶段,当你希望快速迭代代码时,此操作尤其有用。 Databricks 支持通过多种方法将代码从你的本地环境移动到你的工作区。
若要了解如何通过以下方法之一使用同步到你的工作区的代码创建管道,请参阅从 Git 文件夹或工作区文件导入 Python 模块。
- 工作区文件:可以使用 Databricks 工作区文件将管道源代码上传到 Databricks 工作区,然后将该代码导入管道。 若要了解如何使用工作区文件,请参阅什么是工作区文件?。
- Databricks Git 文件夹:为了促进协作和版本控制,Databricks 建议使用 Databricks Git 文件夹 在本地环境和 Azure Databricks 工作区之间同步代码。 Git 文件夹与你的 Git 提供程序集成,允许从本地环境推送代码,然后将该代码导入工作区中的管道。 若要了解如何使用 Databricks Git 文件夹,请参阅 Databricks Git 文件夹的 Git 集成。
- 手动复制代码:可以从本地环境复制代码,将代码粘贴到 Databricks 笔记本中,并使用 Delta Live Tables UI 通过笔记本创建新管道。 要了解如何在 UI 中创建管道,请参阅配置增量实时表管道。
实现自定义 CI/CD 工作流
如果想要编写脚本来管理管道,Databricks 具有 REST API、Databricks 命令行接口 (CLI) 和软件开发工具包 (SDK),适用于常用的编程语言。 还可以在 Databricks Terraform 提供程序中使用 databricks_pipeline
资源。
若要了解如何使用 REST API,请参阅 Databricks REST API 参考中的 Delta Live Tables。
若要了解如何使用 Databricks CLI,请参阅什么是 Databricks CLI?。
若要了解如何使用 Databricks Python SDK,请参阅适用于 Python 的 Databricks SDK 和项目 GitHub 存储库中的管道示例。
若要了解如何将 Databricks SDK 用于其他语言,请参阅将 SDK 与 Azure Databricks 配合使用。
若要了解如何使用 Databricks Terraform 提供程序,请参阅 Databricks Terraform 提供程序和关于 databricks_pipeline 资源的 Terraform 文档。