Kafka集羣partition replication自動分配分析

1. Kafka集羣partition replication默認自動分配分析
下面以一個Kafka集羣中4個Broker舉例,創建1個topic包含4個Partition,2 Replication;數據Producer流動如圖所示:
(1)
這裏寫圖片描述

(2)當集羣中新增2節點,Partition增加到6個時分佈情況如下:
這裏寫圖片描述

副本分配邏輯規則如下:

在Kafka集羣中,每個Broker都有均等分配Partition的Leader機會。
上述圖Broker Partition中,箭頭指向爲副本,以Partition-0爲例:broker1中parition-0爲Leader,Broker2中Partition-0爲副本。
上述圖種每個Broker(按照BrokerId有序)依次分配主Partition,下一個Broker爲副本,如此循環迭代分配,多副本都遵循此規則。

副本分配算法如下:

將所有N Broker和待分配的i個Partition排序.
將第i個Partition分配到第(i mod n)個Broker上.
將第i個Partition的第j個副本分配到第((i + j) mod n)個Broker上.
發佈了71 篇原創文章 · 獲贊 2 · 訪問量 6萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章