選擇分割槽的原則:
1.主題需要多大的吞吐量,是希望每秒寫入100kb,還是1gb
2.從單個分割槽讀取資料的最大吞吐量,資料寫入資料庫的速度不會超過每秒50m,所以從乙個分割槽讀資料的速度也不要超過50m
3.可以估算生產者向單個分割槽寫入資料的吞吐量,生產者的速度一般比消費者快,最高為生產者多估算一些量。
4.每個broker包含的分割槽個數,可用磁碟空間和網路頻寬
5.若訊息按照不同的鍵來寫入分割槽,那麼為已有的主題新增分割槽就很困難
6.單個broker對分割槽個數是有限制,因為分割槽越多,占用的記憶體越多,完成首領的選舉需要更長的時間。
使用主題吞吐量除以消費者吞吐量算出分割槽個數。也就是每秒從主題上寫入和讀取1gb的資料,並且每個消費者每秒鐘可以處理50mb資料。那麼至少需要20個分割槽,這樣20個消費者同時讀取這些分割槽,從而達到每秒1gb的資料。
如果不知道以上資訊,最好把分割槽大小限制再25gb以內可以得到比較理想得效果。
kafka 修改分割槽 kafka分割槽
一 topic下引入partition的作用 topic是邏輯的概念,partition是物理的概念。為了效能考慮,如果topic內的訊息只存於乙個broker,那這個broker會成為瓶頸,無法做到水平擴充套件。kafka通過演算法盡可能的把partition分配到集群的不同伺服器上。partit...
kafka的分割槽模式?
當別人問這個問題的時候,別人肯定是想你是否看過原始碼。是否針對不同場景改過kafka的分割槽模式 這是別人最想知道的是,你的message如何負載均衡的傳送給topic的partition 我們用kafka的時候,可以動態指定partition,也可以不指定partition 當我們動態指定了par...
kafka 分割槽數
kafka的分割槽,相當於把乙個topic再細分成了多個通道 對應 多個執行緒 部署的時候盡量做到乙個消費者 執行緒 對應乙個分割槽。如果你的分割槽數是n,那麼最好執行緒數也保持為n。kafkastream 它是consumer的關鍵類,提供了遍歷方法用於consumer程式呼叫實現資料的消費。其底...