用途:面向生产数据管道的编排与工作流管理,覆盖调度、依赖解析、重试、监控和状态管理。主要能力与选型:Prefect 基于 Flow,适合 Python 化的通用 ETL 与 API 集成,有 Prefect Cloud/Server 两种部署;Dagster 基于资产,强调数据资产血缘、类型检查与可复现性,适合依赖清晰的复杂数据平台;dbt 聚焦 SQL 转换,适合分析工程与数据仓库 ELT,提供模型、测试、快照、种子、Jinja 宏与文档生成,并支持 DuckDB、Postgres、Snowflake、BigQuery、Spark 等适配器;FlowerPower 是构建在 Apache Hamilton 之上的轻量 DAG 编排框架,以 Python 函数定义管道、YAML 配置执行,无数据库、无调度器、无状态持久化,支持同步、threadpool、processpool、ray、dask 执行器及多种 I/O 插件,适合简单批处理 ETL,但不适合需 7×24 可靠性保障、复杂跨依赖图、内置重试与断点恢复的多团队场景。用法要点:重试可用 Prefect 的 @task(retries=3, retry_delay_seconds=60)、Dagster 的 @asset 配合 RetryPolicy;依赖上 Prefect 用 task1 >> task2,Dagster 用 @asset(depends_on=[...]),dbt 由模型中的 ref() 构建 DAG。所有编排器都假设操作幂等,需把 INSERT、UPDATE、MERGE 设计为可重复执行。实践建议:代码、配置与模型全部纳入版本控制,本地先做单元与集成测试,凭证走环境变量,监控用 Prefect Cloud UI、Dagster Dagit 或 dbt Cloud,配置失败告警与日志聚合,优先仅做增量式 schema 演进。技能依赖 data-engineering-core(Polars、DuckDB、PyArrow)与远程存储访问,并与质量校验、可观测性、Lakehouse 等技能相关。原文未提供具体安装命令、价格与平台限制信息。
data-engineering-orchestration
数据与分析
更新于 10-15 23:58