Kafka對每一個Partition都會在Zookeeper上維護(hù)一個ISR列表記錄著那些和Leader同步非常及時的Replication,這樣只要這些副本同步成功了,就可以響應(yīng)Producer的ACK。
如果Leader失敗了,一個未完全同步數(shù)據(jù)的Replication被選擇為了Leader,數(shù)據(jù)是否會丟失呢
這種情況下,數(shù)據(jù)會丟失,可以保證可用性,但是不能保證一致性 * 有一個參數(shù)可以指定只允許ISR中的Replication作為leader來保證一致性 unclean.leader.election.enable=false * 同樣的,如果ISR中的Replication都不能啟動,就會一直沒有l(wèi)eader,沒法對外服務(wù),也就是雖然保證了一致性,但是就會丟失了可用性。
更多關(guān)于“大數(shù)據(jù)培訓(xùn)”的問題,歡迎咨詢千鋒教育在線名師。千鋒教育多年辦學(xué),課程大綱緊跟企業(yè)需求,更科學(xué)更嚴(yán)謹(jǐn),每年培養(yǎng)泛IT人才近2萬人。不論你是零基礎(chǔ)還是想提升,都可以找到適合的班型,千鋒教育隨時歡迎你來試聽。