課程簡(jiǎn)介
a) 結(jié)合實(shí)戰(zhàn)分析大數(shù)據(jù)系統(tǒng)的基石——Zookeeper的實(shí)現(xiàn)原理以及典型使用場(chǎng)景,如分布式配置管理,領(lǐng)導(dǎo)選舉,分布式鎖
b) 分析分布式系統(tǒng)的消息路由策略以及如何解決數(shù)據(jù)傾斜問題
c) 從Kafka 0.8到0.10的數(shù)據(jù)復(fù)制與領(lǐng)導(dǎo)選舉策略的演進(jìn),分析通用分布式系統(tǒng)中典型的復(fù)制與領(lǐng)導(dǎo)選舉的關(guān)鍵技術(shù)及解決方案
d) 分析Kafka 0.8到0.10的Consumer Group Rebalance方案的演進(jìn)——從分布式“自各為政”選舉到集中式“統(tǒng)一決策”選舉
e) 分析流式處理系統(tǒng)的新貴——Kafka Stream的原理及其與其它流式處理系統(tǒng)的區(qū)別
f) 介紹Kafka Producer/Consumer的用法
g) 介紹如何使用Kafka實(shí)現(xiàn)正好一次(Exactly Once)處理語義
h) 介紹Kafka Stream的使用注意事項(xiàng)
i) 介紹如何將Kafka與其它主流分布式系統(tǒng),如Hadoop、Spark,集成
目標(biāo)收益
a) 掌握Kafka的Producer/Consumer的用法及與其它系統(tǒng)集成的方案
b) 初步掌握如何使用Kafka Stream開發(fā)流式處理應(yīng)用
c) 掌握Kafka的復(fù)制和領(lǐng)導(dǎo)選舉策略,并了解分布式系統(tǒng)一致性解決方案
d) 能夠理解并掌握分布式產(chǎn)品選型方法
培訓(xùn)對(duì)象
a) 大數(shù)據(jù)產(chǎn)品開發(fā)工程師
b) 大數(shù)據(jù)運(yùn)維工程師
c) 大數(shù)據(jù)架構(gòu)師
課程大綱
Kafka架構(gòu) |
1.1 Kafka整體架構(gòu) 1.2 Topic & Partition 1.3 Producer最佳實(shí)踐 1.4 消息路由之自定義Partitioner 1.5 兩種不同的Consumer用法 |
Kafka高可用原理 |
2.1 Kafka面臨的CAP問題 2.2 高可用下的數(shù)據(jù)分發(fā) 2.3 動(dòng)態(tài)平衡策略ISR 2.4 基于Zookeeper的領(lǐng)導(dǎo)選舉方案 2.5 Failover原理 |
Consumer Rebalance方案演進(jìn) Kafka Stream |
3.1 為什么需要Rebalance 3.2 Rebalance實(shí)現(xiàn)的效果 3.3 自治式Rebalance原理及問題 3.4 集中式Rebalance實(shí)現(xiàn)原理 3.5 應(yīng)用程序如何處理Consumer Rebalance |
Kafka Stream |
4.1 Kafka Stream架構(gòu) 4.2 Kafka Stream并發(fā)模型 4.3 實(shí)現(xiàn)Topology的兩種方式 4.4 窗口和Join原理與可恢復(fù)性保障 4.5 Kafka Stream與其它流式處理系統(tǒng)的異同 |
Kafka運(yùn)維與如何實(shí)現(xiàn)正好一次 |
5.1 重新分配Replica 5.2 Preferred Replica Leader Election 5.3 兩階段提交實(shí)現(xiàn)正好一次 5.4 冪等操作實(shí)現(xiàn)正好一次 5.5 數(shù)據(jù)處理與offset管理放在同一事務(wù)實(shí)現(xiàn)正好一次 |
Kafka架構(gòu) 1.1 Kafka整體架構(gòu) 1.2 Topic & Partition 1.3 Producer最佳實(shí)踐 1.4 消息路由之自定義Partitioner 1.5 兩種不同的Consumer用法 |
Kafka高可用原理 2.1 Kafka面臨的CAP問題 2.2 高可用下的數(shù)據(jù)分發(fā) 2.3 動(dòng)態(tài)平衡策略ISR 2.4 基于Zookeeper的領(lǐng)導(dǎo)選舉方案 2.5 Failover原理 |
Consumer Rebalance方案演進(jìn) Kafka Stream 3.1 為什么需要Rebalance 3.2 Rebalance實(shí)現(xiàn)的效果 3.3 自治式Rebalance原理及問題 3.4 集中式Rebalance實(shí)現(xiàn)原理 3.5 應(yīng)用程序如何處理Consumer Rebalance |
Kafka Stream 4.1 Kafka Stream架構(gòu) 4.2 Kafka Stream并發(fā)模型 4.3 實(shí)現(xiàn)Topology的兩種方式 4.4 窗口和Join原理與可恢復(fù)性保障 4.5 Kafka Stream與其它流式處理系統(tǒng)的異同 |
Kafka運(yùn)維與如何實(shí)現(xiàn)正好一次 5.1 重新分配Replica 5.2 Preferred Replica Leader Election 5.3 兩階段提交實(shí)現(xiàn)正好一次 5.4 冪等操作實(shí)現(xiàn)正好一次 5.5 數(shù)據(jù)處理與offset管理放在同一事務(wù)實(shí)現(xiàn)正好一次 |