义从数据预处理到模型部署的端到
Posted: Tue Jan 07, 2025 8:17 am
达斯克
Dashk是一个 Python 并行计算库,用于管理分布式数据工作流。它可以跨多个核心或机器并行计算,使其成为大规模数据处理任务的理想选择。 Dask采用基于DAG的执行模型来调度和协调任务,保证资源的高效利用。
Kubeflow 管道
Kubeflow Pipelines是一个开源平台,用于构建和部署可扩展的机器学习工作流程。使用 DAG 定端工作流程。它与 Kubernetes 的紧密集成使其成为在云环境中运行工作流程的可靠选择。 Kubeflow 还提供了一个可视化界面来管理和监控工作流程,提供透明度和控制。
达格斯特
Dagster是一个专为现代数据工作流程设计的编排平台。它强调模块化和类型安全,使 DAG 更易于测试和维护。 Dagster 与 Apache Spark、Snowflake 和 dbt 等流行工具集成,使其成为技术多元化的数据工程团队的绝佳选择。
实际示例:在 Apache Airflow 中创建基本 DAG
配置 Apache Airflow
在创建 DAG 之前,您必须配置 Apache Airflow。您可以使用 Docker 或 pip 等包管理器来安装它:
供电 巴拿马电话数据
在此示例中,简单 DAG 包含两个任务:task_1和task_2。操作员>>在任务之间建立依赖关系,确保它们仅在完成task_2后才执行。task_1
运行并监控 DAG
在 Airflow 中定义并部署 DAG 后,您可以通过 Web 界面与其交互。
DAG 将通过两种方式发挥作用:
您可以手动或通过 API 激活它
您可以定义一个时间表。 DAG 不需要程序,但使用参数定义程序schedule是很常见的。
每次运行 DAG 时,都会创建该 DAG 的一个新实例,称为运行 DAG。 DAG 运行可以针对同一 DAG 并行运行,并且每个 DAG 运行都有一个定义的数据间隔,该间隔标识任务应运行的数据周期。
激活它后,您可以在 DAG 视图中监控其进度,该视图直观地表示工作流程。
空气流动接口中的DAG视图Airflow接口中的DAG视图。图片来源:气流
图形视图提供特定 DAG 执行的详细视图,显示任务依赖性和执行时间。任务实例视图提供有关各个任务的详细信息,包括其状态、开始和结束时间以及日志。您可以检查任务日志来排除错误并了解失败的根本原因。任务实例视图还显示任务的持续时间,帮助您识别潜在的性能问题。
结论
DAG 是数据工程中的一个基本概念,提供了一种可视化和结构化的方式来表示复杂的工作流程。了解节点、边和依赖关系有助于您有效地设计和管理数据管道。
DAG 广泛用于编排 ETL 流程、管理数据处理管道以及自动化机器学习工作流程。您可以利用 Apache Airflow、Prefect 和 Dask 等工具来有效地创建和管理 DAG。这些工具提供易于使用的界面、编程功能以及高级监控、错误管理和升级功能。
为了获得实践经验,Python 中的 Airflow 入
Dashk是一个 Python 并行计算库,用于管理分布式数据工作流。它可以跨多个核心或机器并行计算,使其成为大规模数据处理任务的理想选择。 Dask采用基于DAG的执行模型来调度和协调任务,保证资源的高效利用。
Kubeflow 管道
Kubeflow Pipelines是一个开源平台,用于构建和部署可扩展的机器学习工作流程。使用 DAG 定端工作流程。它与 Kubernetes 的紧密集成使其成为在云环境中运行工作流程的可靠选择。 Kubeflow 还提供了一个可视化界面来管理和监控工作流程,提供透明度和控制。
达格斯特
Dagster是一个专为现代数据工作流程设计的编排平台。它强调模块化和类型安全,使 DAG 更易于测试和维护。 Dagster 与 Apache Spark、Snowflake 和 dbt 等流行工具集成,使其成为技术多元化的数据工程团队的绝佳选择。
实际示例:在 Apache Airflow 中创建基本 DAG
配置 Apache Airflow
在创建 DAG 之前,您必须配置 Apache Airflow。您可以使用 Docker 或 pip 等包管理器来安装它:
供电 巴拿马电话数据
在此示例中,简单 DAG 包含两个任务:task_1和task_2。操作员>>在任务之间建立依赖关系,确保它们仅在完成task_2后才执行。task_1
运行并监控 DAG
在 Airflow 中定义并部署 DAG 后,您可以通过 Web 界面与其交互。
DAG 将通过两种方式发挥作用:
您可以手动或通过 API 激活它
您可以定义一个时间表。 DAG 不需要程序,但使用参数定义程序schedule是很常见的。
每次运行 DAG 时,都会创建该 DAG 的一个新实例,称为运行 DAG。 DAG 运行可以针对同一 DAG 并行运行,并且每个 DAG 运行都有一个定义的数据间隔,该间隔标识任务应运行的数据周期。
激活它后,您可以在 DAG 视图中监控其进度,该视图直观地表示工作流程。
空气流动接口中的DAG视图Airflow接口中的DAG视图。图片来源:气流
图形视图提供特定 DAG 执行的详细视图,显示任务依赖性和执行时间。任务实例视图提供有关各个任务的详细信息,包括其状态、开始和结束时间以及日志。您可以检查任务日志来排除错误并了解失败的根本原因。任务实例视图还显示任务的持续时间,帮助您识别潜在的性能问题。
结论
DAG 是数据工程中的一个基本概念,提供了一种可视化和结构化的方式来表示复杂的工作流程。了解节点、边和依赖关系有助于您有效地设计和管理数据管道。
DAG 广泛用于编排 ETL 流程、管理数据处理管道以及自动化机器学习工作流程。您可以利用 Apache Airflow、Prefect 和 Dask 等工具来有效地创建和管理 DAG。这些工具提供易于使用的界面、编程功能以及高级监控、错误管理和升级功能。
为了获得实践经验,Python 中的 Airflow 入