天天看點

hbase和zookeeper的安裝和部署1.概要2.配置3.ZK4奇數選舉

 大資料量 (100s tb級資料) 且有快速随機通路的需求。

 例如淘寶的交易曆史記錄。資料量巨大無容置疑,面向普通使用者的請求必然要即時響應。

 容量的優雅擴充。

 大資料的驅使,動态擴充系統容量的必須的。例如:webpage db。

 業務場景簡單,不需要關系資料庫中很多特性(例如交叉列、交叉表,事務,連接配接等等)。

 優化方面:合理設計rowkey。因為hbase的查詢用rowkey是最高效的,也幾乎的唯一生産環境可行的方式。是以把你的查詢請求轉換為查詢rowkey的請求吧。

hbase-env.sh

啟動shell:

啟動hbase:

zk可以用來保證資料在zk叢集之間事務性一緻,如:

hbase和zookeeper的安裝和部署1.概要2.配置3.ZK4奇數選舉

删除server1中的資料後,其他叢集的server會自動同步删除之後的資料。

叢集的規模小于等于3,各個叢集的系統時間必須一緻。

安裝

(1)解壓zk的壓縮包到指定位置。

(2)修改conf檔案,cp zoo_sample.cfg zoo.cfg

(3)編輯zoo.cfg 修改datadir=/home/zk/data 新增 server.0=hadoop0:2888:3888 server.1=hadoop1:2888:3888 server.2=hadoop2:2888:3888

(4)建立檔案夾 mkdir /home/zk/data 在data目錄下,建立檔案myid,值為0

(5)用scp指令分發zk檔案夾到叢集

啟動zk的服務:zkserver.sh start

驗證zk的啟動狀态:zkserver.sh status

zookeeper的叢集數推薦配置奇數,leader選舉算法采用了paxos協定,該協定的核心思想是當多數server寫成功時,則任務資料寫成功,如:

有3個server,則兩個寫成功即可;

有4或5個server,則三個寫成功即可;

如果有3個server,則最多運作1個server挂掉

如果有4個server,則同樣最多運作1個server挂掉

由此,我們可以看出3台伺服器和4台伺服器的容災能力是一樣的,是以為了節約伺服器資源,一般我們采用奇數個數,作為伺服器部署個數。

繼續閱讀