Databricks 开发人员用户包括数据科学家、数据工程师、数据分析师、机器学习工程师以及 DevOps 和 MLOps 工程师 - 所有构建解决方案和集成以扩展和自定义 Databricks 以满足其特定需求。 除了工作区中提供的许多 Databricks API 和数据工程功能外,还有许多工具可用于连接到 Databricks 并在本地进行开发,以支持 Databricks 的开发人员用户。
本文概述了 Databricks 开发人员用户可用的 API 和工具。
开始在工作区中进行编码
在工作区中进行开发是快速熟悉 Databricks API 的好方法。 Databricks 支持工作区中以 Python、SQL、Scala、R 和其他开发人员为中心的功能,包括有用的工具和实用工具。
下面是一些开始方法:
- 阅读概述并查找适用于 Python、 Scala 和 R 的各种方案的教程链接。有关各种语言支持的工具表,请参阅 语言概述。
- 浏览 SQL 语言参考 ,了解功能的深度和广度。
- 完成教程:在 Python、Scala 或 R 中使用 Apache Spark 数据帧加载和转换数据 ,以获取 Spark API 简介。 PySpark 的其他简单示例位于 PySpark 基础知识中。
- 浏览可用的 参考文档,包括 REST API 参考,该参考文档 提供了 Databricks 对象的良好图景,这些对象也可以使用其他工具创建和修改。
- 在笔记本中安装 Python SDK 并编写一个简单的函数。
- 使用 Databricks Utilities
fs命令移动一些文件,以便熟悉如何使用dbutils实用工具来操作 Databricks 环境。
生成自定义应用和解决方案
Azure Databricks 为工作区和本地开发提供了工具。 在工作区中,可以使用 UI 创建应用,数据可以在 Unity Catalog 存储卷和工作区文件中轻松访问。工作区专用功能(如用于调试的 Databricks Assistant)可用,其他功能(如笔记本)功能齐全,并且可以使用 Git 文件夹进行源代码管理。
或者,在本地计算机上使用 IDE 开发自定义解决方案,以充分利用丰富开发环境的完整功能。 本地开发支持更广泛的语言,这意味着对于大型项目来说,诸如调试和测试框架等依赖语言的功能变得可用,同时还可以直接访问版本控制系统。
有关工具使用建议,请参阅应使用哪个开发人员工具?
| 功能 / 特点 | Description |
|---|---|
| 进行身份验证和授权 | 为使用 Azure Databricks 的工具、脚本和应用配置身份验证和授权。 |
| 适用于 Visual Studio Code 的 Databricks 扩展 | 从 Visual Studio Code 连接到远程 Azure Databricks 工作区,以便轻松配置与 Databricks 工作区的连接,以及用于管理 Databricks 资源的 UI。 |
| PyCharm Databricks 插件 | 配置与远程 Databricks 工作区的连接,并从 PyCharm 在 Databricks 集群上执行文件。 此插件由 JetBrains 与 Databricks 合作开发和提供。 |
| Databricks SDK | 使用 SDK 自动执行与 Databricks 的交互,而不是直接调用 REST API。 工作区中也提供了 SDK。 |
连接到 Databricks
连接到 Databricks 是许多集成和解决方案的必要组件,Databricks 提供了大量可供选择的连接工具。 下表提供了将开发环境和进程连接到 Azure Databricks 工作区和资源的工具。
| 功能 / 特点 | Description |
|---|---|
| Databricks Connect | 使用常用的集成开发环境(例如 PyCharm、IntelliJ IDEA、Eclipse、RStudio 和 JupyterLab)连接到 Azure Databricks。 |
| 适用于 Visual Studio Code 的 Databricks 扩展 | 轻松配置与 Databricks 工作区的连接,以及用于管理 Databricks 资源的 UI。 |
| SQL 驱动程序和工具 | 连接到 Azure Databricks 以运行 SQL 命令和脚本,以编程方式与 Azure Databricks 交互,并将 Azure Databricks SQL 功能集成到以 Python、Go、JavaScript 和 TypeScript 等常用语言编写的应用程序中。 |
小窍门
还可以将许多其他常用的第三方工具连接到群集和 SQL 仓库,以访问 Azure Databricks 中的数据。 请参阅 技术合作伙伴。
管理基础结构和资源
构建 CI/CD 管道以自动预配和管理基础结构和资源的数据工程师可以从以下支持简单和更复杂的管道方案的工具中进行选择。
有关工具使用建议,请参阅应使用哪个开发人员工具?
| 功能 / 特点 | Description |
|---|---|
| Databricks CLI | 使用 Databricks 命令行接口(CLI)访问 Azure Databricks 功能。 CLI 包装 Databricks REST API,因此可以使用 Databricks CLI 与 Databricks 交互,而不是使用 curl 或 Postman 直接发送 REST API 调用。 从本地终端使用 CLI,或者从工作区 Web 终端使用它。 |
| Databricks 资产捆绑包 | 使用Databricks 资产捆绑包(Databricks CLI 的一项功能),采用行业标准的开发、测试和部署最佳实践,为您的数据和AI项目定义和管理Databricks资源及CI/CD管道。 |
| Databricks Terraform 提供者 和 用于 Databricks 的 Terraform CDKTF | 使用 Terraform 预配 Azure Databricks 基础结构和资源。 |
| CI/CD 工具 | 集成常用的 CI/CD 系统和框架,例如 GitHub Actions、 Jenkins 和 Apache Airflow。 |
协作和共享代码
在工作区中的许多其他协作功能中,Databricks 特别支持希望通过这些功能在工作区中协作和共享代码的开发人员用户:
| 功能 / 特点 | Description |
|---|---|
| UDFs(用户自定义函数) | 开发 UDF(用户定义的函数)以重复使用和共享代码。 |
| Git 文件夹 | 将 Git 文件夹 配置为对 Databricks 项目文件进行版本控制和源代码管理贡献。 |
与 Databricks 开发人员社区互动
Databricks 有一个活跃的开发人员社区,由以下程序和资源支持:
- Databricks MVP:此计划表彰社区成员、数据科学家、数据工程师、开发人员和开源爱好者,他们在数据和AI社区中的表现非常出色。 有关详细信息,请参阅 Databricks MVP。
- 培训:Databricks 为 Apache Spark 开发人员、 生成 AI 工程师、 数据工程师等提供学习模块。
- 社区: Databricks 社区 和 Apache Spark 社区提供了丰富的知识。