consumer和partition的數量建議

2021-10-17 20:27:30 字數 464 閱讀 4456

1. 如果consumer比partition多,是浪費,因為kafka的設計是在乙個partition上是不允許併發的,所以consumer數不要大於partition數

2. 如果consumer比partition少,乙個consumer會對應於多個partitions,這裡主要合理分配consumer數和partition數,否則會導致partition裡面的資料被取的不均勻。最好partiton數目是consumer數目的整數倍,所以partition數目很重要,比如取24,就很容易設定consumer數目

3. 如果consumer從多個partition讀到資料,不保證資料間的順序性,kafka只保證在乙個partition上資料是有序的,但多個partition,根據你讀的順序會有不同

4. 增減consumer,broker,partition會導致rebalance,所以rebalance後consumer對應的partition會發生變化

mapreduce程式設計模型之partitioner

partitioner是乙個mapreduce的頂級抽象類 用於決定map輸出的kv鍵值對 如何按照job.setnumberruce n 中設定的n個數進行分割槽 每個kv落在哪個分割槽之中 以及如何保證相同的key落在同乙個分割槽中 只有相同的key落在同乙個分割槽中 才能保證 這個相同的key...

Consumer高階特性

一 exclusive consumer broker會從多個consumers中挑選乙個consumer來處理queue中所有的訊息,從而保證了訊息的有序處理。如果這個consumer失效,那麼broker會自動切換到其它的consumer。destination queue session.cr...

kafka動態修改 consumer

在新版本kafka中,consumer offsets這個topic是存放消費者偏移量的,但是該主題預設配置副本數量只有1,容易造成單點故障,我們可以動態修改 無需重啟服務 副本因子,提高kafka的可靠性 1.1動態地增加相關主題的副本數非常的簡單,同樣是使用kafka reassign part...