写点什么

构建动态并响应实时用户行为的 Pinterest

  • 2019-09-07
  • 本文字数:1000 字

    阅读完需:约 3 分钟

构建动态并响应实时用户行为的Pinterest

ArchSummit北京2018大会上,刘波讲师做了《构建动态并响应实时用户行为的 Pinterest》主题演讲,主要内容如下。


演讲简介


Pinterest 的使命是帮助用户发现并尝试他们喜爱的事物。在过去的三年里,Pinterest 的系统架构发生了巨大的改变。三年前,绝大部分 Pinterest 产品的内容都是由离线 Job 预先生成。目前,Pinterest 通过各类产品所展现给用户的内容全部经由后台系统在线生成,并且能够自动的根据用户实时行为进行动态调整。另外,过去三年高速增长的用户数量和产品复杂度也对系统提出了更苛刻的需求。


本次演讲将介绍 Pinterest 系统在过去三年里的演进过程,展示当前整体系统的架构。该架构对内容分发型互联网产品将具有借鉴意义。另外,本演讲将着重介绍其中几个主要系统的架构设计与技术难点,例如机器学习模型在线 Serving Platform 的架构设计,RocksDB 的实时数据复制,机器学习模型的 CPU 性能优化等。


演讲提纲


  1. Pinterest 的几类主要产品(Following Feed、推荐和 Topic Feed 等)

  2. 支撑这些产品的一系列系统在过去三年里的演进过程

  3. 机器学习模型在线 Serving Platform 的架构

  4. RocksDB 的实时数据复制策略

  5. 有状态服务的应用层集群管理

  6. 一些解决过的技术难点和踩过的坑


听众受益点


  1. 大规模内容分发型互联网产品整体架构设计经验

  2. 机器学习模型在线 Serving Platform 的架构设计经验

  3. 基于单机存储引擎(如 RocksDB)搭建各类大规模在线分布式有状态服务系统的经验


讲师介绍


刘波


Pinterest 基础架构部软件工程经理


现就职于基础架构部门,具有丰富的大规模在线分布式数据系统的设计与开发经验。从零开始设计并开源了 Pinterest 的 C++ 核心库 Rocksplicator(包含实时数据复制,应用层集群自动管理,底层客户端库,弹性路由,统计报告等)。在 Rocksplicator 的基础上,他带领团队设计并开发了十余个应用于不同场景的分布式系统,包括机器学习模型在线 Serving Platform,基于 RocksDB 的 Feed 系统、Counter 系统、实时用户事件 tracking 系统, KV 系统等。这些系统为绝大部分 Pinterest 产品提供服务,包括 Homefeed、广告、搜索、推荐、增长、Spam 检测等。


加入 Pinterest 之前,刘波曾在 Facebook 开发分布式图数据库系统 TAO。TAO 负责整个 Facebook 社交图的存储与在线访问,支持超过 100 亿每秒的请求。刘波在获得博士学位后做过一段时间的教学和学术研究工作。












完整演讲 PPT 下载链接


https://archsummit.infoq.cn/2018/beijing/schedule


2019-09-07 08:041729

评论

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

科学治疗“知识焦虑症”

陈驰远

个人成长 知识管理

大家看看我这个斜杠青年够斜吗?

伯薇

个人成长 斜杠青年 能力提升 好奇心 T型人才

[计算机网络1]我所知道的关于TCP的一切

海神名

TCP 计算机网络 网络协议 原理

架构师们必备的三三制需求分析思维模型

常平

缘起:很久很久以前

escray

学习 测试驱动开发实战营

DDD 实践手册(3. Entity, Value Object)

Joshua

系统设计 领域驱动设计 系统架构 架构模式

轻轻一扫,立刻扣款,付款码背后的原理你不想知道吗?

楼下小黑哥

支付宝 微信支付 支付系统 付款码

源码浅析 - CocoaLumberjack 3.6 之 DDLog

Edmond

ios log4j CocoaLumberjack SourceCode DDLog

哲少荐书:这才是心理学

Jackey

心理学 读书

扩展Redis:增加Redis命令

心平气和

redis

leetcode1137:第 N 个泰波那契数

Damien

算法 LeetCode 斐波那契

阿里29大开源项目看看你都用过哪些

Bruce Duan

企业如何选择物联网中台

老任物联网杂谈

物联网中台 IOT Platform 物联网平台

高仿瑞幸小程序 02 创建Tabbar

曾伟@喵先森

小程序 微信小程序 大前端 瑞幸

下一个阶段,就真的容易了吗?

ke_lv

生活

思维偏差与产品设计的关联思考

石君

产品设计 思维方式 安全产品设计

虚拟化Pod性能比物理机还要好,原因竟然是这样!

亨利笔记

Kubernetes 容器 k8s vSphere pod

File类的文件操作

Howe

Java File 文件 io

我愿沉迷于学习,无法自拔(三)

孙瑜

深度思考 程序员 感悟

CEPH OSD Down故障分析与处理

木子

译文MapReduce:大型集群上的简化数据处理

海神名

mapreduce 译文 MIT 分布式计算

Java并发编程系列——线程池

孙苏勇

Java Java并发 并发编程 多线程 线程池

我看拼多多黄峥:旧世界瓦解冰消

池建强

拼多多 黄峥

百度开源项目

Bruce Duan

每天一道 python 面试题 - Python中的元类(metaclass) 详细版本

志学Python

python 爬虫 python元类

Netty 源码解析(五): Netty 的线程池分析

猿灯塔

游戏夜读 | 做游戏选什么专业?

game1night

leetcode20.有效的括号

Damien

算法 LeetCode

我的关注清单

lmymirror

知识管理 关注清单 RSS

树莓派小车系列-直播

波叽波叽啵😮一口盐汽水喷死你

树莓派 ffmpeg 云直播 盐汽水 raspberry

用 Vim 编辑 Markdown 时直接粘贴图片

mzlogin

vim markdown

构建动态并响应实时用户行为的Pinterest_最佳实践_刘波_InfoQ精选文章