淺談zookeeper的在hbase叢集中的作用
一,什麼是zookeeper?
ZooKeeper 顧名思義 動物園管理員,他是拿來管大象(Hadoop) 、 蜜蜂(Hive) 、 小豬(Pig) 的管理員, Apache Hbase和 Apache Solr 以及LinkedIn sensei 等專案中都採用到了 Zookeeper。ZooKeeper是一個分散式的,開放原始碼的分散式應用程式協調服務,ZooKeeper是以Fast Paxos演算法為基礎,實現同步服務,配置維護和命名服務等分散式應用。
上面的解釋感覺還不夠,太官方了。Zookeeper 從程式設計師的角度來講可以理解為Hadoop的整體監控系統。如果namenode,HMaster當機後,這時候Zookeeper 的重新選出leader。這是它最大的作用所在。
二、zookeeper的作用
1.Zookeeper加強叢集穩定性
Zookeeper通過一種和檔案系統很像的層級名稱空間來讓分散式程式互相協同工作。這些名稱空間由一系列資料暫存器組 成,我們也叫這些資料暫存器為znodes。這些znodes就有點像是檔案系統中的檔案和資料夾。和檔案系統不一樣的是,檔案系統的檔案是儲存在儲存區 上的,而zookeeper的資料是儲存在記憶體上的。同時,這就意味著zookeeper有著高吞吐和低延遲。
Zookeeper實現了高效能,高可靠性,和有序的訪問。高效能保證了zookeeper能應用在大型的分散式系統上。高可靠性保證它不會由於單一節點的故障而造成任何問題。有序的訪問能保證客戶端可以實現較為複雜的同步操作。
2.Zookeeper加強叢集持續性
ZooKeeper Service
組成Zookeeper的各個伺服器必須要能相互通訊。他們在記憶體中儲存了伺服器狀態,也儲存了操作的日誌,並且持久化快照。只要大多數的伺服器是可用的,那麼Zookeeper就是可用的。
客戶端連線到一個Zookeeper伺服器,並且維持TCP連線。並且傳送請求,獲取回覆,獲取事件,並且傳送連線訊號。如果這個TCP連線斷掉了,那麼客戶端可以連線另外一個伺服器。
Zookeeper保證叢集有序性
Zookeeper使用數字來對每一個更新進行標記。這樣能保證Zookeeper互動的有序。後續的操作可以根據這個順序實現諸如同步操作這樣更高更抽象的服務。
Zookeeper保證叢集高效
Zookeeper的高效更表現在以讀為主的系統上。Zookeeper可以在千臺伺服器組成的讀寫比例大約為10:1的分佈系統上表現優異。
資料結構和分等級的名稱空間
Zookeeper的名稱空間的結構和檔案系統很像。一個名字和檔案一樣使用/的路徑表現,zookeeper的每個節點都是被路徑唯一標識
三、zookeeper在Hadoop及hbase中具體作用
1,Hadoop有NameNode,HBase有HMaster,為什麼還需要zookeeper,下面給大家通過例子給大家介紹。
一個Zookeeper的叢集中,3個Zookeeper節點.一個leader,兩個follower的情況下,停掉leader,然後兩個follower選舉出一個leader.獲取的資料不變.我想Zookeeper能夠幫助Hadoop做到:
Hadoop,使用Zookeeper的事件處理確保整個叢集只有一個NameNode,儲存配置資訊等.
HBase,使用Zookeeper的事件處理確保整個叢集只有一個HMaster,察覺HRegionServer聯機和當機,儲存訪問控制列表等.
相關文章
- Hadoop叢集中Hbase的介紹、安裝、使用Hadoop
- ZooKeeper淺談
- 淺談HBase的資料分佈
- 淺談色集中異色色對的匹配
- 淺談產品模型(Profile)在程式設計中的作用模型程式設計
- Hadoop叢集之 ZooKeeper和Hbase環境搭建Hadoop
- 淺淺淺談JavaScript作用域JavaScript
- 淺談Javascript中的作用域鏈JavaScript
- 淺談「復仇」在遊戲中的作用與經典案例遊戲
- Kafka——zookeeper的作用Kafka
- 淺談JavaScript作用域JavaScript
- 淺談Java的反射機制和作用Java反射
- 2. TeraSort在Hadoop分散式叢集中的執行Hadoop分散式
- 淺談Hbase與中間的一些設計策略
- zookeeper叢集的搭建
- 智簡魔方淺談IDC智慧化管理的作用
- 在 Kubernetes 叢集中部署現代應用的通用模式模式
- ElasticSearch之叢集中的節點Elasticsearch
- 在kubernetes叢集中部署open-falcon
- 【叢林】CSS background 背景淺談CSS
- 【叢林】CSS 邊框淺談CSS
- 智簡魔方淺談IDC財務系統的作用
- ent M2M模型在pxc叢集中的一個大坑模型
- 淺談JS作用域、this及閉包JS
- HBase知識點集中總結
- 談談 JavaScript 的作用域JavaScript
- ZooKeeper 05 - ZooKeeper 叢集的腦裂問題(Split Brain)AI
- HBASE叢集搭建
- 天翼雲虛擬IP地址及其在高可用叢集中的應用
- 搞懂 ZooKeeper 叢集的資料同步
- Zookeeper叢集 + Kafka叢集Kafka
- Kubernetes 叢集中 Ingress 故障的根因診斷
- Kubernetes EKS 叢集中的 IP 地址分配問題
- 列出叢集中所有執行容器的映象
- 在 K8s 叢集中建立 DERP 伺服器K8S伺服器
- zookeeper 叢集搭建
- Zookeeper叢集搭建
- ZooKeeper叢集解析
- 搭建zookeeper叢集(偽叢集)