iT邦幫忙

DAY 11
0

現在很多分散式系統都會用Zookeeper,在Day 5也有稍微提到一下Zookeeper可以用來維護partition metadata。現在就來多介紹一些ZK的用處吧。

ZK有幾個常見的用法:

  • 共享Metadata
  • 監控成員節點的狀況 & 維護叢集的成員名單
  • 協助選出叢集中的leader(master)

ZK的資料是以樹狀方式組織,樹的節點叫做znode,可以在znode裡放資料。

由於znode裡的資料是許多成員都關心的,所以ZK有一個notification機制,可以在znode裡的資料更新時通知有事先對該znode註冊watcher的process。

有一種znode叫做ephemeral node,用來監控成員的狀況。這個znode跟建立znode的成員的session狀況是連動的,若session一段時間沒有回報(heartbeat),這個znode節點就會被刪除。因此若有其他成員在此znode上設定watcher,就會在此節點掛掉(即session掛掉時)收到通知。

所有成員都會對master對應的ephemeral node註冊watcher,所以在master失效後,會有成員偵測到而啟動leader election。


上一篇
Day 10: In-Memory data
下一篇
Day 12: Zookeeper (續)
系列文
分散式資料處理,以Stream Computing為例30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言