Allegro 如何将运行 GCP 数据流管道的成本降低 60%

科技   2024-11-21 13:19   辽宁  

作者 | Rafal Gancarz
译者 | 王强
策划 | Tina

Allegro 设法显著节约了 GCP Big Data 上运行的一条数据流管道的成本。该公司继续致力于通过评估资源利用率、增强管道配置、优化输入和输出数据集以及改进存储策略来提高其数据工作流的成本效益。

Allegro 在 Google Cloud Dataflow 处理引擎上运行许多数据管道,并找出了许多优化这些管道以节省成本的方法。Allegro 高级软件工程师 Jakub Demianowski 分享了一个案例研究,详细介绍了优化单个管道以将成本降低约 60% 所采取的步骤。

CPU 利用率统计(来源:Allegro 技术博客

成本优化工作集中在三个关键领域,并涉及一些对导致运行管道总成本的潜在低效率的假设的测试。要探索的第一个假设是计算资源可能利用不足。对 CPU 利用率指标的分析显示,平均 CPU 利用率为 85%,使用率降低的原因是数据混洗,这表明 CPU 并未被充分利用。

内存利用率统计(来源:Allegro 技术博客)

通过查看内存利用率指标,Demianowski 得出结论,只有 50% 的可用内存被使用。他选择更改计算实例类型以调整 CPU 与内存的比率,从而节省了 10% 的成本。

作者考虑的第二个假设是,原有虚拟机类型的性价比不是最优的。根据 Google Cloud 提供的 CoreMark 分数,t2d-standard-8 VM 类型提供了最佳的成本效益。他使用 3% 的原始数据集运行数据管道并实现了 32% 的成本降低,进一步证实了这一点。第三个假设侧重于 VM 存储类型。Demianowski 对比了使用 HDD 或 SSD 磁盘的不同 VM 系列,结果表明使用 SSD 更便宜。

最后一个假设涉及作业配置中可能的成本效率低下因素。一个特别令人担忧的领域是 Dataflow Shuffle 服务的成本过高。作者评估了使用和不使用 Shuffle 服务运行该作业的情况,并得出结论,关闭 Shuffle 服务可大大降低成本,此外还可使 worker 节点充分利用可用内存。

在实施博客文章中描述的步骤后,Demianowski 估计运行该管道的年成本从 12.7 万美元降低至约 4.8 万美元。他总结了提高运行管道成本效益的各项努力:

我们甚至无需接触处理代码就取得了出色的成果。推测方法提供了良好的结果。可能仍有一些优化空间,但在给我的时间约束内,我认为这些结果是一流的,并且没有发现任何进一步优化 Dataflow 作业的环境和配置的理由。

作者强调,每个数据管道都是不同的,工程师需要有条不紊地查看和运用不同的途径来降低运营成本并实证评估相关成本。

原文链接:

How Allegro Reduced the Cost of Running a GCP Dataflow Pipeline by 60%(https://www.infoq.com/news/2024/11/allegro-dataflow-cost-savings/)

声明:本文由 InfoQ 翻译,未经许可禁止转载。

今日好文推荐

知名 UP 主被锤用开源项目“伪装原创”,原作者越南 AI 工程师愤怒维权,网友:把收益赔给他!

Chrome 被强制出售?谷歌或将抛弃 ChromeOS 全面转向 Android 系统

一朝成名,一夜破产!这家谷歌前高管创立的AI公司突然宣布倒闭,专家:这个行业不适合AI

一场泰森拳王比赛就能让上云鼻祖宕机,员工:周末不想加班修bug

 会议推荐

就在 12 月 13 日 -14 日,AICon 将汇聚 70+ 位 AI 及技术领域的专家,深入探讨大模型与推理、AI Agent、多模态、具身智能等前沿话题。此外,还有丰富的圆桌论坛、以及展区活动,满足你对大模型实践的好奇与想象。现在正值 9 折倒计时,名额有限,快扫码咨询了解详情,别错过这次绝佳的学习与交流机会!

InfoQ
为一线互联网公司核心技术人员提供优质内容。科技圈的观察者,前沿技术的传播者。
 最新文章