kafka 名詞解釋

生產者(producer):  構造需要處理的信息, 併發給broker

消費者(consumer): 處理生產者構造的信息, 從broker中拉取需要處理的信息

經紀人(broker):kafka實例, 消息數據存放在broker中, 解耦生產者和消費者

主題(topic): 邏輯上的一個概念, 消息通過主題來分類

分區(partition): 主題可以細分爲分區, 一個主題可以有多個分區, 但一個分區只屬於一個主題.  同一主題的不同分區數據不一樣(單指同一主題下的所有leader分支)

副本因子(replice-factor): 分區的總數量, 包括一個leader副本和若干個follower副本, 副本因子數量不要超過集羣中broker的數量, 同一分區的副本不能存在於同一broker上.

高水位(HW): 標識分區內可拉取(消費)消息偏移量的最大值(不包含), HW的具體值取的是該分區所有副本HW的最小值, 消息同步時, 所有副本同步消息的進度可能不同.

偏移量(offset):  消息在分區內的唯一標識

LEO(log end offset):當前日誌文件中,下一條待寫入消息的offset

AR(assigned replicas): 分區中的所有副本 , AR=ISR+OSR

ISR(in-sync replicas): 與leader副本保持一定程度同步的副本(基本和leader副本的數據一致), 副本可能從ISR轉換爲OSR. leader副本掛掉後, 默認情況下只會從ISR中選舉新的leader副本.

OSR(out-of-sync replicas): 與leader副本同步滯後過多的副本(和leader副本的數據差的比較多), 副本可能從OSR轉換爲ISR.

 

 

數據在broker, 主題, 分區,副本因子之間的流轉關係.  配置信息:一個主題(T), 3個分區(P), 3個副本因子(R), 集羣中共有3個broker(B)

假設:一個主題有三個分區, 每個分區又有3個副本(一個leader, 兩個follower), 共9個副本會分配到這3個broker上, 且每個broker上的每個分區副本不重複. 當一條數據發往broker時,其流轉順序爲:  找到數據所屬的topic, 根據分配策略選出所屬分區的leader副本並將該消息發給選中的leader副本, 該分區的其他follower副本同步消息leader副本中的消息.

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章