2025上半年,最新 AI实践都在这!20+ 应用案例,任听一场议题就值回票价 了解详情
写点什么

Yelp 使用 Apache Beam 和 Apache Flink 彻底改造其流式架构

  • 2024-05-29
    北京
  • 本文字数:1116 字

    阅读完需:约 4 分钟

大小:523.49K时长:02:58
Yelp 使用 Apache Beam 和 Apache Flink 彻底改造其流式架构

Yelp 公司 采用 Apache Beam 和 Apache Flink 重新设计了原来的数据流架构。该公司使用 Apache 数据流项目创建了统一而灵活的解决方案,取代了将交易数据流式传输到其分析系统(如 Amazon Redshift 和内部数据湖)的一组分散的数据管道。


Yelp 在两套不同的在线系统中管理业务实体(其平台中的主要数据实体之一)的属性。平台的旧版部分将业务属性存储在 MySQL 数据库中,而采用微服务架构的较新部分则使用 Cassandra 存储数据


在过去,该公司将数据从在线数据库流式传输到离线(分析)数据库的解决方案,是由上述管理业务属性的两个区域的一些独立数据管道组成的。该方案使用  MySQL 复制处理程序 从旧系统推送数据,使用  Cassandra 源连接器 从新系统推送数据。在这两种情况下,更新都发布到 Apache Kafka,而  Redshift 连接器负责将数据同步到相应的 Redshift 表。


之前的业务属性流式传输架构(来源:Yelp 工程博客)


原有解决方案采用单独的数据管道,将数据从在线数据库流式传输到分析数据存储中,其封装性较弱,因为离线(分析)数据存储中的数据表与在线数据库中的对应表完全对应,使数据分析团队面临数据差异和数据准确性问题。此外,分析过程必须从多个表中收集数据,并将这些数据规范化为一致的格式。最后,由于在线和离线数据存储之间的表架构相同,对架构的更改必须在两处各自部署,从而带来了维护挑战。

Yelp 团队决定解决原有方案的这些问题,方法是将在线系统的内部实施细节抽象出来,并为使用分析数据存储的客户提供一致的体验。Yelp 高级数据工程师 Hakampreet Singh Pandher 解释了团队采用的方法:[...]


我们实施了一个统一的流,以一致且用户友好的格式提供所有相关的业务属性数据。这种方法可确保业务属性消费者无需处理业务属性和功能之间的细微差别,也无需了解它们的在线源数据库中数据存储的复杂性。


团队利用 Apache Beam 和 Apache Flink 作为分布式处理后端。Apache Beam 转换作业从旧版 MySQL 和较新的 Cassandra 表中获取数据,将数据转换为一致的格式并将其发布到单个统一的流中。工程师使用  Joinery Flink 作业 将业务属性数据与相应的元数据合并。另一项作业用于解决数据不一致的问题,最后在 Redshift Connector 和 Data Lake Connector 的帮助下,业务属性数据进入两个主要的离线数据存储中。


业务属性的新流式架构(来源:Yelp 工程博客)


彻底改造流式架构的总体收益是让数据分析团队能够通过单一模式访问业务属性数据,这有助于数据发现,让数据消费更简单。该团队还利用 实体 - 属性 - 值(EAV)模型,将新业务属性纳入系统,同时减少维护开销。


原文链接:


Yelp Overhauls Its Streaming Architecture with Apache Beam and Apache Flink (https://www.infoq.com/news/2024/04/yelp-streaming-apache-beam-flink/)

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

2024-05-29 08:008110

评论

发布
暂无评论
发现更多内容

语音技术与人工智能:智能语音交互的多场景应用探索

天津汇柏科技有限公司

AI 人工智能

Java分析工具 JProfiler for mac注册码及安装教程

Rose

KubeEdge SIG AI 产业革新与应用:跨越边界,迎向未来

华为云原生团队

云计算 容器 云原生

定制 CRM 的4个真实用户案例(帮你选择更灵活CRM产品)

NocoBase

开源 CRM 定制化 CRM系统 案例研究

一个测试Leader的工作案例

老张

团队管理 项目管理 软件测试 自动化测试

苹果Mac远程管理Royal TSX使用教程

Rose

企业流程自动化:AI技术加持,解锁高效运营

合合技术团队

人工智能 AI 自动化 数据治理

iZotope音乐制作 Ozone Advanced 11直装版下载安装

Rose

【连载 10】CountDownLatch

FunTester

Databend 2024 年度总结:乘势而上,创新无止境

Databend

年度总结

AIP智能体平台:构建未来工作的智慧管家

大东(AIP内容运营专员)

人工智能

苹果Mac版SVN客户端 SnailSVN Pro 免激活版

Rose

代码编辑器 sublime text破解安装包 附sublime text汉化补丁

Rose

AIP智能体平台:赋能软件开发与运行的新时代

大东(AIP内容运营专员)

人工智能

观测云产品更新 | 日志索引、Pipeline、场景图表等优化

观测云

产品迭代

WebGL在医学领域的应用

北京木奇移动技术有限公司

软件外包公司 webgl开发 医学领域

Fluent Editor v3.25.0 正式发布!2025年第一个版本,增加标题列表导航、分隔线、多图多文件上传等实用特性

OpenTiny社区

开源 前端 富文本 OpenTiny

pd19虚拟机永久许可证 Parallels Desktop 19下载安装

Rose

JimuReport 积木报表 v1.9.3发布,免费可视化报表

JEECG低代码

数据可视化 报表 报表工具 报表打印 大屏设计器

Set A Light 3D Studio:打造专业级3D灯光布局,摄影布光从此得心应手

Rose

BOE(京东方)全新概念级“AI视听中心”亮相CES 2025 携手高通引领智慧家居娱乐新图景

爱极客侠

WebGL开发虚拟解剖系统

北京木奇移动技术有限公司

软件外包公司 webgl开发 医学解剖

探索AIP智能体平台:构建未来业务超级自动化

大东(AIP内容运营专员)

人工智能

Typeeto for Mac:让Mac键盘秒变蓝牙键盘,跨设备输入更高效

Rose

MestReNova 14:精准解析NMR数据,助力科研突破!

Rose

转转平台IM系统架构设计与实践(一):整体架构设计

JackJiang

即时通讯;IM;网络编程

Yelp 使用 Apache Beam 和 Apache Flink 彻底改造其流式架构_架构_Rafal Gancarz_InfoQ精选文章