课程简介
a) 结合实战分析大数据系统的基石——Zookeeper的实现原理以及典型使用场景,如分布式配置管理,领导选举,分布式锁
b) 分析分布式系统的消息路由策略以及如何解决数据倾斜问题
c) 从Kafka 0.8到0.10的数据复制与领导选举策略的演进,分析通用分布式系统中典型的复制与领导选举的关键技术及解决方案
d) 分析Kafka 0.8到0.10的Consumer Group Rebalance方案的演进——从分布式“自各为政”选举到集中式“统一决策”选举
e) 分析流式处理系统的新贵——Kafka Stream的原理及其与其它流式处理系统的区别
f) 介绍Kafka Producer/Consumer的用法
g) 介绍如何使用Kafka实现正好一次(Exactly Once)处理语义
h) 介绍Kafka Stream的使用注意事项
i) 介绍如何将Kafka与其它主流分布式系统,如Hadoop、Spark,集成
目标收益
a) 掌握Kafka的Producer/Consumer的用法及与其它系统集成的方案
b) 初步掌握如何使用Kafka Stream开发流式处理应用
c) 掌握Kafka的复制和领导选举策略,并了解分布式系统一致性解决方案
d) 能够理解并掌握分布式产品选型方法
培训对象
a) 大数据产品开发工程师
b) 大数据运维工程师
c) 大数据架构师
课程大纲
Kafka架构 |
1.1 Kafka整体架构 1.2 Topic & Partition 1.3 Producer最佳实践 1.4 消息路由之自定义Partitioner 1.5 两种不同的Consumer用法 |
Kafka高可用原理 |
2.1 Kafka面临的CAP问题 2.2 高可用下的数据分发 2.3 动态平衡策略ISR 2.4 基于Zookeeper的领导选举方案 2.5 Failover原理 |
Consumer Rebalance方案演进 Kafka Stream |
3.1 为什么需要Rebalance 3.2 Rebalance实现的效果 3.3 自治式Rebalance原理及问题 3.4 集中式Rebalance实现原理 3.5 应用程序如何处理Consumer Rebalance |
Kafka Stream |
4.1 Kafka Stream架构 4.2 Kafka Stream并发模型 4.3 实现Topology的两种方式 4.4 窗口和Join原理与可恢复性保障 4.5 Kafka Stream与其它流式处理系统的异同 |
Kafka运维与如何实现正好一次 |
5.1 重新分配Replica 5.2 Preferred Replica Leader Election 5.3 两阶段提交实现正好一次 5.4 幂等操作实现正好一次 5.5 数据处理与offset管理放在同一事务实现正好一次 |
Kafka架构 1.1 Kafka整体架构 1.2 Topic & Partition 1.3 Producer最佳实践 1.4 消息路由之自定义Partitioner 1.5 两种不同的Consumer用法 |
Kafka高可用原理 2.1 Kafka面临的CAP问题 2.2 高可用下的数据分发 2.3 动态平衡策略ISR 2.4 基于Zookeeper的领导选举方案 2.5 Failover原理 |
Consumer Rebalance方案演进 Kafka Stream 3.1 为什么需要Rebalance 3.2 Rebalance实现的效果 3.3 自治式Rebalance原理及问题 3.4 集中式Rebalance实现原理 3.5 应用程序如何处理Consumer Rebalance |
Kafka Stream 4.1 Kafka Stream架构 4.2 Kafka Stream并发模型 4.3 实现Topology的两种方式 4.4 窗口和Join原理与可恢复性保障 4.5 Kafka Stream与其它流式处理系统的异同 |
Kafka运维与如何实现正好一次 5.1 重新分配Replica 5.2 Preferred Replica Leader Election 5.3 两阶段提交实现正好一次 5.4 幂等操作实现正好一次 5.5 数据处理与offset管理放在同一事务实现正好一次 |