大规模数据处理实战
蔡元楠
硅谷资深工程师
41608 人已学习
新⼈⾸单¥59
登录后,你可以任选4讲全文学习
课程目录
已完结/共 46 讲
大规模数据处理实战
15
15
1.0x
00:00/00:00
登录|注册

34 | Amazon热销榜Beam Pipeline实战

商品分类分离
4. 不同商品门类生成榜单
在售商品过滤
重复商品处理
退货商品处理
3. 商品去重处理流水线和商品在售状态过滤
流处理模式
批处理模式
2. 每小时更新的热销榜单设计
热销商品结果的存储和serving设计
销量前K商品计算
商品销量统计
1. 基础的热销商品列表计算
工程问题的大规模数据处理技术设计
亚马逊的热销商品系统
亚马逊的全球市值
亚马逊关闭中国国内电商业务
思考题
Beam数据处理技术应用
介绍
Amazon热销榜Beam Pipeline实战

该思维导图由 AI 生成,仅供参考

你好,我是蔡元楠。
今天我要与你分享的主题是“Amazon 热销榜 Beam Pipeline 实战”。
两个月前,亚马逊(Amazon)宣布将关闭中国国内电商业务的消息你一定还记忆犹新。虽然亚马逊遗憾离场,但它依然是目前全球市值最高的电商公司。
作为美国最大的一家网络电子商务公司,亚马逊的总部位于华盛顿州的西雅图。类似于 BAT 在国内的地位,亚马逊也是北美互联网 FAANG 五大巨头之一,其他四个分别是 Facebook、Apple、Netflix 和 Google。
亚马逊的热销商品系统就如下图所示。
当我搜索“攀岩鞋”时,搜索结果的第三个被打上了“热销商品”的标签,这样能帮助消费者快速做出购买决策。
当我点击这个“Best Seller”的标签时,我可以浏览“攀岩鞋”这个商品分类中浏览销量最高的前 100 个商品。
这些贴心的功能都是由热销商品系统实现的。
这一讲我们就来看看在这样的热销商品系统中,怎样应用之前所学的 Beam 数据处理技术吧。今天,我们主要会解决一个热销商品系统数据处理架构中的这几个问题:
怎样用批处理计算基础的热销商品列表、热销商品的存储和 serving 设计?
怎样设计每小时更新的热销榜单?
怎样设计商品去重处理流水线和怎样根据商品在售状态过滤热销商品?
怎样按不同的商品门类生成榜单?
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 中文繁体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
    • 阿拉伯语
  • 解释
  • 总结

本文介绍了如何利用Beam数据处理技术构建Amazon热销榜的数据处理架构。作者首先讨论了批处理计算基础的热销商品列表、热销商品的存储和serving设计。其次,文章探讨了如何设计每小时更新的热销榜单,使用了Beam的API解决方案,例如Top() Transform和Kafka消息队列进行流处理。此外,窗口处理和滑动窗口的应用也得到了提及。文章还讨论了商品去重处理流水线和根据商品在售状态过滤热销商品的设计。最后,文章探讨了按不同的商品门类生成榜单的方法,使用了分离模式设计和output tag的应用。总的来说,本文通过实际案例展示了如何利用Beam数据处理技术构建热销商品系统,为读者提供了实用的技术指导和思路。

仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《大规模数据处理实战》
新⼈⾸单¥59
立即购买
登录 后留言

全部留言(7)

  • 最新
  • 精选
  • Tim
    总算追上进度了,mark下~整理点疑问继续追加过来~

    作者回复: 👍

    2019-07-17
  • Ming
    本讲是这个课程中信息量最高的文章之一 👍👍👍 不过我相信具体实现中的细节应该还有很多。不知道作者有没有机会分享一下常见的实现误区和pitfall? 除此之外,不知道文章说的这些方案在并发的能力上如何?假如有adhoc+并发的大数据场景,常见的大数据方案似乎在成本上都很高。这算是个大数据上的固有(intrinsic)难题嚒?
    2019-07-14
    10
  • Fiery
    "按不同的商品门类生成榜单"这个部分,文章只是简单说了一下怎么用API而已,但是实际使用中商品门类非常之多,如何使用合理的方案处理Amazon上千种门类,上万种商品(每种商品可能属于多个门类)的实时销量在pipeline中批量处理的情况?还请仔细讲一下,毕竟是“实战”不是只是过家家的toy app。
    2020-03-15
    3
  • YZJ
    有人看明白为啥要用Distinct.withRepresentativeValueFn了么, 我理解就是个普通的转换,将productId转成producetUniqueId, 为什么要用Distinct呢?
    2019-07-13
    1
    3
  • 吴静
    老师你好,这里有两点疑问: (1)isSuccessfulSale 和 inStock,不能总是去交易系统实时去查的吧?这样开销会很大。 (2)是否可以最后在处理这个状态?虽然是最后被合并后的值,这样只需要很少的调用次数就可以实现了效果
    2019-09-17
    2
    2
  • _yiunia##远
    “怎样设计每小时更新的热销榜单” 滑动窗口一小时滚动一次,而数据流在一直拉取,这段时间内的数据都是存在内存里么?不会爆掉么?还是另外有聚合的逻辑
    2019-07-31
    1
  • 李孟聊AI
    老师我想问下, PCollection<String>这个种懒加载出来的集合怎么转存成临时的list集合?
    2019-07-24
收起评论
显示
设置
留言
7
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部