- 快召唤伙伴们来围观吧
- 微博 QQ QQ空间 贴吧
- 视频嵌入链接 文档嵌入链接
- 复制
- 微信扫一扫分享
- 已成功复制到剪贴板
Apache Pulsar Introduction
Apache Pulsar 是 Apache 软件基金会顶级项目,是下一代云原生分布式消息流平台,集消息、存储、轻量化函数式计算为一体。Pulsar 于 2016 年由 Yahoo 开源并捐赠给 Apache 软件基金会进行孵化,2018 年成为Apache 软件基金会顶级项目。
Pulsar 采用计算与存储分离的分层架构设计,支持多租户、持久化存储、多机房跨区域数据复制,具有强一致性、高吞吐以及低延时的高可扩展流数据存储特性。本次分享将介绍 Apache Pulsar 的功能特性,及社区参与、未来发展等内容。
展开查看详情
1 .Apache Pulsar 云原⽣时代的消息平台 翟佳
2 .⾃我介绍 • 开源项⽬爱好者: • Apache Pulsar PMC成员 • Apache BookKeeper PMC成员 • EMC -> StreamNative • 华中科⼤ -> 中科院计算所 streamnative.io
3 .• Apache Pulsar 简介 • Pulsar 的根本不同 • Pulsar 的云原⽣架构 • Pulsar 的⽣态和社区
4 .Apache Pulsar 简介 streamnative.io
5 .Apache Pulsar 是什么 streamnative.io
6 .Apache Pulsar 要解决的问题 • 企业需求和数据规模 • 多租户 - 百万Topics - 低延时 - 持久化 - 跨地域复制 • 解除存储计算耦合 • 运维痛点:替换机器、服务扩容、数据 rebalance • 减少⽂件系统依赖 • 性能难保障: 持久化(fsync)、⼀致性(ack: all)、多Topic • IO不隔离:消费者读Backlog的时候会影响其他⽣产者和消费者 streamnative.io
7 .Apache Pulsar 特性 • 云原⽣架构: • 存储计算分离 • 分层 + 分⽚ • ⾼性能 + 强⼀致性 • ⽀持统⼀的 Queue 和 Stream 的接⼝。 • 丰富的企业级特性 • 多租户隔离 — 百万Topics — 跨地域复制 — 鉴权认证 streamnative.io
8 .• Apache Pulsar 简介 • Pulsar 的根本不同 • Pulsar 的云原⽣架构 • Pulsar 的⽣态和社区
9 .• Apache Pulsar 简介 • Pulsar 的根本不同 • 统⼀消费模型 • 企业级特性 • 分层分⽚架构
10 .统⼀消费模型 streamnative.io
11 .统⼀消费模型 • Exclusive • Failover • Shared • Key-Shared streamnative.io
12 .统⼀消费模型 — 订阅 Broker Subscription1 Producer Topic … Write Ack Subscription2 Consumer readEntries ManagedLedger + Cursor Ack/N-Ack 1 2 3 4 5 6 7 1 2 3 4 5 6 7 -/+ BookKeeper 1 2 3 4 5 6 7 A B C D E Ledger stores Data Ledger stores Cursor changes streamnative.io
13 .• Apache Pulsar 简介 • Pulsar 的根本不同 • 统⼀消费模型 • 企业级特性 • 分层分⽚架构
14 .企业级特性 streamnative.io
15 .跨地域复制 Beijing Shanghai Producer Producer (P1) Topic (T1) Topic (T1) (P2) Consumer SubscripEon (S1) SubscripEon (S1) Consumer (C1) (C2) Broker原⽣ Pub/Sub⼀体 Producer Topic (T1) 管理简单 (P3) 配置灵活 Guangzhou streamnative.io
16 .• Apache Pulsar 简介 • Pulsar 的根本不同 • 统⼀消费模型 • 企业级特性 • 分层分⽚架构
17 .分层:存储计算分离 分层架构: • 节点对等 • 独⽴扩展 • 灵活容错 • 快速扩容 streamnative.io
18 .分⽚:逻辑分区 + 物理分⽚ streamnative.io
19 .• Apache Pulsar 简介 • Pulsar 的根本不同 • Pulsar 的云原⽣架构 • Pulsar 的⽣态和社区
20 .存储层: Apache BookKeeper • 分布式⽇志/流存储 • 低延时多复本复制: • Quorum Parallel Replication • 持久化: • 所有操作保证刷盘后才进⾏ACK • 强⼀致性 • 读写⾼可⽤ • 存储节点的读写隔离 streamnative.io
21 .存储层: Apache BookKeeper • Parallel Quorum Replication • (Ensemble, Write Quorum, Ack Quorum) streamnative.io
22 .• Apache Pulsar 简介 • Pulsar 的根本不同 • Pulsar 的云原⽣架构 • 便捷运维 + ⽆感知容错 • IO的并发和隔离
23 .Broker 容错 ⽆感知容错 零数据catchup streamnative.io
24 .Bookie容错 应⽤⽆感知 并发可控 数据恢复 streamnative.io
25 .瞬时存储扩容 应⽤⽆感知 数据均匀分布 ⽆re-balance streamnative.io
26 .分区 + 分⽚ https://jack-vanlightly.com/sketches/2018/10/2/kafka-vs-pulsar-rebalancing-sketch streamnative.io
27 .• Apache Pulsar 简介 • Pulsar 的根本不同 • Pulsar 的云原⽣架构 • 便捷运维 + ⽆感知容错 • IO的并发和隔离
28 .BookKeeper 存储节点 — 读写分离 streamnative.io
29 .IO的并发和隔离 — Write Write streamnative.io