中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Kafka水位是什么

發布時間:2021-11-22 10:05:53 來源:億速云 閱讀:221 作者:iii 欄目:大數據

這篇文章主要講解了“Kafka水位是什么”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“Kafka水位是什么”吧!

什么是水位

kafka中用水位來描述,
一個分區中的可見數據的offset。
大概你需要知道這幾點:

  1. hw(水位)你可以理解成是一個全局(所有副本最小offset)的offset,
    針對的是一個分區

  2. LEO代表著該副本的所有消息的最大offset,
    針對的是一個副本,也就是每個副本都有LEO,并且不一樣。
    其中所有副本中最小的LEO就是水位

Kafka水位是什么  

水位

為什么要水位?

為了保障數據的一致性

Kafka中水位的運作

當 Leader收到一條消息并寫入成功,
其LEO則和馬上 +1.
副本會定期去和Leader進行同步,
每同步一個消息,其自己的LEO相應+1,
而水位則是所有副本最小的LEO,
所以也會慢慢進行增加。

  • 和ACK的關系
    其實沒有必然的關系,
    ACK是用來保證數據不丟失的,
    而 hw 是用來保證客戶端消費的一致性的,
    不過當ACK=-1,
    因為會等到數據完全寫入到所有副本,
    才能返回成功,
    也就是說所有副本的LEO都 +1,
    其水位必然也會 +1,
    這個時候就可以避免數據丟失了。
    否則則會存在數據丟失的風險

  • 為什么ACK != -1 數據就可能丟失
    比如一個分區,四個副本1,2,3,4:
    1:LEO = 10(Leader)
    2:LEO = 8
    3:LEO = 7
    4:LEO = 6
    此時 hw = 6,
    當1 號Leader掛掉了,
    3號當選了新Leader,
    則所有存活副本首先會將hw之外的所有數據清除,
    然后從Leader同步水位之后的數據
    比如2號副本:
    先清除本身數據7,8,LEO變成6,
    然后去Leader同步6之后的數據,
    哪怕老Leader1號恢復了,6-10號數據還在,
    也需要將宕機時候的hw之后的數據全部清除,
    重新從Leader同步數據

感謝各位的閱讀,以上就是“Kafka水位是什么”的內容了,經過本文的學習后,相信大家對Kafka水位是什么這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

神农架林区| 双鸭山市| 北海市| 麦盖提县| 红河县| 雅安市| 石河子市| 昌宁县| 沛县| 榕江县| 铁岭市| 北辰区| 竹北市| 防城港市| 河津市| 枝江市| 民乐县| 泰来县| 彭山县| 泾源县| 桦南县| 新野县| 苍梧县| 江华| 泽库县| 武邑县| 佳木斯市| 岢岚县| 鄂温| 巴青县| 新田县| 龙岩市| 富川| 富蕴县| 崇信县| 上栗县| 搜索| 洱源县| 日照市| 永嘉县| 北碚区|