2021年大数据ZooKeeper(一):ZooKeeper基本知识
目錄
Zookeeper基本知識
ZooKeeper概述
ZooKeeper特性
ZooKeeper集群角色
Leader:?
Follower:
Observer:
Zookeeper基本知識
ZooKeeper概述
Zookeeper是一個分布式協調服務的開源框架。主要用來解決分布式集群中應用系統的一致性問題。
ZooKeeper本質上是一個分布式的小文件存儲系統。提供基于類似于文件系統的目錄樹方式的數據存儲,并且可以對樹中的節點進行有效管理。從而用來維護和監控你存儲的數據的狀態變化。通過監控這些數據狀態的變化,從而可以達到基于數據的集群管理。
ZooKeeper特性
- 全局數據一致:集群中每個服務器保存一份相同的數據副本,client無論連接到哪個服務器,展示的數據都是一致的,這是最重要的特征;
- 可靠性:如果消息被其中一臺服務器接受,那么將被所有的服務器接受。
- 順序性:包括全局有序和偏序兩種:全局有序是指如果在一臺服務器上消息a在消息b前發布,則在所有Server上消息a都將在消息b前被發布;偏序是指如果一個消息b在消息a后被同一個發送者發布,a必將排在b前面。
- 數據更新原子性:一次數據更新要么成功(半數以上節點成功),要么失敗,不存在中間狀態;
- 實時性:Zookeeper保證客戶端將在一個時間間隔范圍內獲得服務器的更新信息,或者服務器失效的信息。
ZooKeeper集群角色
Leader:?
Zookeeper集群工作的核心
事務請求(寫操作)的唯一調度和處理者,保證集群事務處理的順序性;
集群內部各個服務器的調度者。
對于create,setData,delete等有寫操作的請求,則需要統一轉發給leader處理,leader需要決定編號、執行操作,這個過程稱為一個事務。
Follower:
處理客戶端非事務(讀操作)請求,轉發事務請求給Leader;
參與集群Leader選舉投票。
此外,針對訪問量比較大的zookeeper集群,還可新增觀察者角色。
Observer:
觀察者角色,觀察Zookeeper集群的最新狀態變化并將這些狀態同步過來,其對于非事務請求可以進行獨立處理,對于事務請求,則會轉發給Leader服務器進行處理。
不會參與任何形式的投票只提供非事務服務,通常用于在不影響集群事務處理能力的前提下提升集群的非事務處理能力。
總結
以上是生活随笔為你收集整理的2021年大数据ZooKeeper(一):ZooKeeper基本知识的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 2021年大数据Flink(四十八):扩
- 下一篇: 2021年大数据ZooKeeper(二)