使用作业实现数据处理和分析工作流
可以使用 Azure Databricks 作业来协调 Databricks 平台上的数据处理、机器学习或数据分析管道。 Azure Databricks 作业支持多种工作负载类型,其中包括笔记本、脚本、增量实时表管道、Databricks SQL 查询和 dbt 项目。 以下文章指导你使用 Azure Databricks 作业的功能和选项来实现数据管道。
使用 Azure Databricks 作业转换、分析和可视化数据
可以使用作业创建用于引入、转换、分析和可视化数据的数据管道。 在 Azure Databricks 作业中使用 Databricks SQL 中的示例生成一个具有以下功能的管道:
- 使用 Python 脚本通过 REST API 提取数据。
- 使用增量实时表提取和转换提取的数据,并将转换后的数据保存到 Delta Lake。
- 使用作业与 Databricks SQL 的集成来分析转换后的数据,并创建图形以可视化结果。
在作业中使用 Python 包
Python wheel 文件是打包和分发运行 Python 应用程序所需文件的标准方式。 可以轻松创建一个作业,以使用打包为任务类型为 Python wheel
的 Python wheel 文件的 Python 代码。 请参阅在 Azure Databricks 作业中使用 Python wheel 文件。
使用打包在 JAR 中的代码
以 JVM 语言(如 Java 和 Scala)实现的库和应用程序通常打包在 Java 存档 (JAR) 文件中。 Azure Databricks Jobs 支持打包在任务类型为 JAR
的 JAR 中的代码。 请参阅在 Azure Databricks 作业中使用 JAR。
使用笔记本或中心存储库中维护的 Python 代码
管理生产项目版本控制和协作的常见方法是使用中心存储库,例如 GitHub。 Azure Databricks 作业支持使用笔记本或从存储库(包括 GitHub 或 Databricks Repos)导入的 Python 代码创建和运行作业。 请参阅在 Azure Databricks 作业中使用版本受控的源代码。
使用 Apache Airflow 来协调作业
Databricks 建议使用 Azure Databricks 作业来协调工作流。 但是,Apache Airflow 通常用作工作流业务流程系统,为 Azure Databricks 作业提供原生支持。 虽然 Azure Databricks 作业提供视觉对象 UI 来创建工作流,但 Airflow 使用 Python 文件来定义和部署数据管道。 有关使用 Airflow 创建并运行作业的示例,请参阅使用 Apache Airflow 协调 Azure Databricks 作业。
使用服务主体运行作业
可以使用 Microsoft Entra ID(以前称为 Azure Active Directory)应用程序和服务主体以服务帐户的身份运行作业。 以服务帐户而不是个人用户的身份运行作业可以控制对作业的访问,确保作业具有所需的权限,并防止在从工作区中删除作业所有者时出现问题。 有关创建和使用服务主体运行 Azure Databricks 作业的教程,请参阅使用 Microsoft Entra ID 服务主体运行作业。