申请试用
HOT
登录
注册
 
PULSAR-从消息系统到流原生数据平台
岁月静好
/
发布于
/
2840
人观看
PULSAR-从消息系统到流原生数据平台
展开查看详情

1 .从消息系统到流原⽣生数据平台 Sijie Guo —- twitter: @sijieg wechat: guosijie_

2 .Who am I • Sijie Guo • 开源项⽬目爱好者:Pulsar, BookKeeper, Hive, HBase, … • Streamlio联合创始⼈人 • Yahoo -> Twitter -> Streamlio • 华中科⼤大 -> 中科院计算所

3 .Pulsar于九⽉月从Apache Incubator毕业成为顶级项⽬目

4 .什什么是Apache Pulsar

5 .2003 2010 2012 2006 2011

6 . “Flexible Pub/Sub messaging backed by durable log/stream storage”

7 .为什什么要“造轮⼦子” • 没有系统能够解决遇到的问题和规模 • 多租户 • 百万Topics • 低延时 • 持久化 • 跨地域复制

8 .为什什么要“造轮⼦子” (2) • 已有的系统存在问题 • 分区模型紧耦合存储和计算,不不是云原⽣生(Cloud Native)的设计 • 存储模型过于简单,强依赖于⽂文件系统 • 想开持久化保证数据不不丢,或者,增加Topics的数量量,性能下降太厉害 • IO不不隔离:消费者在清除Backlog的时候会影响其他⽣生产者和消费者 • 运维太痛苦 - 替换机器器、服务扩容都需要很漫⻓长的重新均衡数据的过程

9 .为什什么要“造轮⼦子” (3) • 基础架构从物理理机时代往容器器化转型 • 需要⼀一个新的⾯面向容器器编排设计的原⽣生系统

10 .项⽬目状态 • 2012在Yahoo内部启动,经历了了⽆无数的迭代 • 2016年年九⽉月Yahoo将Pulsar开源 • 2017年年六⽉月Yahoo将Pulsar捐献给了了Apache软件基⾦金金会 • 2018年年九⽉月Pulsar毕业成为顶级项⽬目 • 2353 commits - 22 Yahoo releases - 9 Apache releases • 23 committers from 7 companies, 59 contributors • 30+ companies on production

11 .简介

12 .不不同在哪⾥里里 • 灵活的、统⼀一的消息模型:队列列 + 流 • 云原⽣生:存储(storage)和计算(serving/messaging)分离 • 降维:从物理理分区到逻辑分⽚片

13 .Pulsar概念

14 .Pulsar概念 (2)

15 .队列列 + 流

16 .流:独占式订阅

17 .流:灾备式订阅

18 .队列列:共享式订阅

19 .例例⼦子: Event Center

20 .例例⼦子: Event Center (2)

21 .存储和计算分离 分层架构: Brokers & Bookies • 独⽴立扩展 • 灵活容错 • 快速扩容

22 . 分⽚片存储 • 分区(Partition)是逻辑上的⼀一个概念 • 分区按照时间或者⼤大⼩小被切成分⽚片 (Segment) • 分⽚片被打散存放到集群中的所有节点

23 .读写流程 (1) (1) ⽣生产者发送消息给Broker

24 .读写流程 (2) (2) Broker并发写N个副本

25 .读写流程 (3) (3) Broker等待来⾃自于Bookies的Quorum Acks

26 .读写流程 (4) (4) Broker返回确认给⽣生产者,并投递给消费者

27 .Broker容错

28 .Bookie容错

29 .扩容

12 点赞
5 收藏
9下载
确认
3秒后跳转登录页面
去登陆