使用作业实现数据处理和分析工作流

可以使用 Azure Databricks 作业来协调 Databricks 平台上的数据处理、机器学习或数据分析管道。 Azure Databricks 作业支持多种工作负载类型,其中包括笔记本、脚本、增量实时表管道、Databricks SQL 查询和 dbt 项目。 以下文章指导你使用 Azure Databricks 作业的功能和选项来实现数据管道。

提示

可使用 Databricks 资产捆绑包来定义和以编程方式管理作业。 请参阅什么是 Databricks 资产捆绑包?使用 Databricks 资产捆绑包在 Azure Databricks 上开发作业

使用 Azure Databricks 作业转换、分析和可视化数据

可以使用作业创建用于引入、转换、分析和可视化数据的数据管道。 在 Azure Databricks 作业中使用 Databricks SQL 中的示例生成一个具有以下功能的管道:

  1. 使用 Python 脚本通过 REST API 提取数据。
  2. 使用增量实时表提取和转换提取的数据,并将转换后的数据保存到 Delta Lake。
  3. 使用作业与 Databricks SQL 的集成来分析转换后的数据,并创建图形以可视化结果。

在作业中使用 dbt 转换

如果你要使用 dbt 核心项目执行数据转换,并希望将该项目集成到 Azure Databricks 作业中,或者想要创建新的 dbt 转换并在作业中运行这些转换,请使用 dbt 任务类型。 请参阅在 Azure Databricks 作业中使用 dbt 转换

在作业中使用 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

使用 Apache Airflow 来协调作业

Databricks 建议使用 Azure Databricks 作业来协调工作流。 但是,Apache Airflow 通常用作工作流业务流程系统,为 Azure Databricks 作业提供原生支持。 虽然 Azure Databricks 作业提供视觉对象 UI 来创建工作流,但 Airflow 使用 Python 文件来定义和部署数据管道。 有关使用 Airflow 创建并运行作业的示例,请参阅使用 Apache Airflow 协调 Azure Databricks 作业

使用服务主体运行作业

可以使用 Microsoft Entra ID 应用程序和服务主体以服务帐户的身份运行作业。 以服务帐户而不是个人用户的身份运行作业可以控制对作业的访问,确保作业具有所需的权限,并防止在从工作区中删除作业所有者时出现问题。 有关创建和使用服务主体运行 Azure Databricks 作业的教程,请参阅使用 Microsoft Entra ID 服务主体运行作业