【ArchSummit架构师峰会】探讨数据与人工智能相互驱动的关系>>> 了解详情
写点什么

构建动态并响应实时用户行为的 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:041419

评论

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

当UI走查说页面色值错误时,先别急着检查代码

茶无味的一天

前端 浏览器 UI 色差 取色

图像渲染

掘金安东尼

算法 10月月更

Python应用之验证码验证

二哈侠

验证码 10月月更 Python应用

【愚公系列】2022年10月 Go教学课程 021-Go容器之切片操作

愚公搬代码

10月月更

MFC|MediaPlayer基本功能使用

中国好公民st

c++ qt 10月月更

Zepoch节点开放申请,Web3流支付巨头Zebec利好不断

股市老人

深入浅出MatrixOne Parser

MatrixOrigin

矩阵起源 MatirxOrigin MatirxOne

Vue3入门指北(十一)watch 和 watchEffect

Augus

Vue3 10月月更

干货分享 | MatrixOne系统架构

MatrixOrigin

MatrixOrigin MatrixOne 金海

爬虫练习题(三)

张立梵

Python. 10月月更 爬虫案例

跟着卷卷龙一起学Camera--PDAF 03

卷卷龙

ISP camera 10月月更

实时数仓、湖仓一体、流批一体有什么区别

雨果

实时数仓

SQL高效查询建议

雨果

sql

开发者有话说 | 求知若饥,虚心若愚

Samson

程序员 个人成长 10月月更 成长感悟

实时数仓、数据中台、大数据平台、湖仓一体各有什么区别?

雨果

数据中台

Web3流支付迎来新质变,Zebec开放Zepoch节点申请

BlockChain先知

开发者有话说|如何成为优秀的前端技术经理

No Silver Bullet

个人成长 技术经理

代码开发篇之设计模式

邱学喆

设计模式

Web3流支付迎来新质变,Zebec开放Zepoch节点申请

EOSdreamer111

Python应用之激活码生成器

二哈侠

Python语法 10月月更 激活码生成器

golang反向代理实现中的坑位

有态度的马甲

跟着卷卷龙一起学Camera--CMS

卷卷龙

ISP camera 10月月更

【结构体内功修炼】枚举和联合的奥秘(三)

Albert Edison

C语言 枚举 结构体 10月月更 联合

2022-10-07:给定员工的 schedule 列表,表示每个员工的工作时间。 每个员工都有一个非重叠的时间段 Intervals 列表,这些时间段已经排好序。 返回表示 所有 员工的 共同,正

福大大架构师每日一题

算法 rust 福大大

想学Go Web?先来看看如何搭建一个beego项目吧

Regan Yue

Go Go web Beego 10月月更

架构师的十八般武艺:可延展性

agnostic

可延展性

leetcode 106. Construct Binary Tree from Inorder and Postorder Traversal 从中序与后序遍历序列构造二叉树(中等)

okokabcd

LeetCode 算法与数据结构

跟着卷卷龙一起学Camera--PDAF 04

卷卷龙

ISP camera 10月月更

数据仓库的下一阶段该是什么?

雨果

数据仓库

Python应用之哥德巴赫猜想——偶数

二哈侠

10月月更 哥德巴赫猜想 Python应用

spring入门介绍

楠羽

笔记 spring 5 10月月更

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