客户案例

现代编排:Endpoint 从 Airflow 到 Prefect 的演进

Sunny Pachunuri
Sunny Pachunuri
数据工程与平台经理

“Prefect 的支持感觉就像是一次真正的合作,极大地提高了我们团队的效率和满意度。”—— Sunny

识别 Airflow 的痛点

Endpoint 是一家数字产权和第三方托管公司,致力于开发简化房屋交易流程的技术,服务于代理商、买家和卖家。随着 Endpoint 的数据工程和机器学习工作流开始快速扩展,Endpoint 数据工程与平台经理 Sunny Pachunuri 开始评估编排解决方案。起初,该公司选择了 Astronomer(基于 Airflow 构建),因为它支持快速设置环境,从而实现快速开发。起初看起来很有前景,但随着团队开始引入更多人员并开发复杂管道,他们遇到了一些不可预见的挑战,这些挑战很快演变成了无法逾越的障碍。

“Airflow 的界面不如我们预期的那么友好,而且我们经常需要等待那些无法满足我们需求的基本功能。”—— Sunny

复杂且昂贵的工作流改造

Airflow 僵化的有向无环图(DAG)结构与 Endpoint 现有的 Python 代码兼容性不佳,需要进行大量修改,这占用了大量时间,并使机器学习的周转时间增加了 3 倍。

高昂的基础设施开销

为了管理 Airflow 中的不同计算类型,Endpoint 必须创建并维护多个生产环境,导致复杂性和成本增加。

糟糕的用户体验

团队在使用 Airflow 的用户界面时感到非常吃力,因为它缺乏流畅采用所需的直观设计和及时更新。“界面不如我们预期的那么友好,我们经常需要等待那些无法满足我们需求的基本功能,”Sunny 说道。

在竭尽全力适应 Airflow 带来的诸多挑战后,Sunny 开始评估能够更好地满足团队需求的其他解决方案。在探索了 Dagster 和 Mage 等多个替代方案后,Endpoint 选择了 Prefect。Prefect 因其强大的错误处理和容错能力、轻松的工作流部署、先进的可观测性和监控功能,以及符合 Python 习惯的开发方式而脱颖而出。

升级到 Prefect

在确定 Prefect 是最符合需求的解决方案后,Sunny 强调了其平稳的实施和迁移过程。与之前使用 Airflow 的经历相比——当时需要大量代码修改以适应其 DAG 和任务结构,同时还面临 Celery、Kubernetes 和 EKS 等重大部署限制——Prefect 轻量级且用户友好的设置实现了统一环境。这消除了对代码进行“改造”的需要,促进了无缝集成,并实现了即时生产力。

Prefect 的技术团队与 Endpoint 协作审核了他们的架构,并提出了能够充分发挥 Prefect 功能的设计变更。新架构确定后,迁移工作在两个半月内成功完成。该过程包括使用 Terraform 设置基础设施并配置统一环境。仅凭一名数据工程师和一名机器学习工程师,Endpoint 就完成了 58 个数据工程管道和 14 个机器学习管道的迁移,彻底简化了团队的整个工作流。

“迁移到 Prefect 后,团队的反馈非常积极,”Sunny 强调道。“数据工程和 ML Ops 团队都对节省的大量时间和消除了曾经的主要瓶颈——代码改造要求——感到印象深刻。”这种简化的迁移过程使团队在一个季度内共同构建了额外的 78 个管道,每个管道都针对独特的计算资源需求进行了定制——这种效率在 Airflow 僵化的代码适配和部署限制下是无法实现的。

“数据工程和 ML Ops 团队对 Prefect 节省的大量时间以及消除了改造要求感到印象深刻。”—— Sunny

释放效率与可观测性

迁移后,Endpoint 迅速领略到了使用 Prefect 胜过 Airflow 的优势。

简化的实施

在包含两个数据工程管道和四个机器学习管道的验证性测试(POC)中,团队发现 Prefect 的装饰器(如 @Flow@Task)节省了大量时间并提高了效率。

统一的计算环境

Prefect 的计算模型允许 Endpoint 在单一环境中运行多样化的工作流。“我们的机器学习团队可以使用 Docker 和 Kubernetes,而数据工程团队可以使用 Celery 和 EKS,所有这些都在同一个环境中。这极大地简化了我们的 DataOps 流程,”Sunny 解释道。

可预测的成本结构

Prefect 每个工作区(Workspace)固定价格的定价结构,使 Endpoint 能够维护多个环境(开发、测试、集成和生产)而无需产生额外费用。“我们的支出变得可预测,消除了意外,并实现了精确的年度预算估算,”Sunny 指出。除了获得这种可预测性之外,通过从 Airflow 切换到 Prefect,Endpoint 还将编排成本削减了超过 73%。

“仅从 Airflow 切换到 Prefect,账单成本就降低了 73.78%。”—— Sunny

增强的可观测性和监控

借助 Prefect,Endpoint 终于拥有了全面的监控功能,可以监控作业性能并获取可操作的警报。Sunny 补充道:“我们还在 Prefect 中运行 DBT 作业,将所有可观测性和监控功能集中在一起。”

建立持久的合作伙伴关系

自近两年前采用 Prefect 以来,Sunny 和他在 Endpoint Closing 的团队不仅转型了编排能力,还受益于卓越的支持服务。“我曾建议对 Slack 警报进行增强,三天内,Prefect 就发布了该功能,”Sunny 回忆道。“Prefect 的支持感觉就像是一次真正的合作,极大地提高了我们团队的效率和满意度。”

通过迁移到 Prefect,Endpoint Closing 有效解决了 Airflow 带来的挑战,增强了他们的数据策略,并使他们能够专注于最擅长的事情:为客户简化并加速房屋交易流程。

“Prefect 的支持感觉就像是一次真正的合作,极大地提高了我们团队的效率和满意度。”—— Sunny

亲身体验差异

探索我们的 Prefect 与 Airflow 对比页面,了解为什么像 Endpoint 这样的团队正在转向 Prefect。或者,与我们的专家交谈,通过预订我们的团队演示来亲眼见证。