Hbase學習技巧

2021-08-31 11:50:07 字數 2025 閱讀 7651

1、深入了解hbase物理模型架構:

從物理結構上講,hbase由三種型別的伺服器構成主從式架構。它的主節點master主要的作用為對錶的建立和刪除。從節點segionserver主要作用為運算元據表,對錶進行檢視修改插入等操作。hbase的segionserver和hdfs的datanode放置在一起,使segionserver操作的資料具有區域性性。

hbase表按照rowkey分成若干個ragion,這些ragion由ragionserver管理,每個ragionserver最多可以管理1000個ragion,每個ragion的大小為1g,然後ragion又根據列簇分為若干個store,每個store中又有三個部分,memstore、storefile、blockcaceh。當有資料寫入store時,h會先將資料寫入memstore中,也就是記憶體中,memstore寫滿至百分之八十才會溢位到storefile中,也就是hfile。

mater的主要職責:

(1)協調region servers

(2)啟動時分配region,還原時重新分配region或者負載均衡

(3)監控集群中所有regionserver例項管理員方法

(4)提供建立,刪除,更新表的介面。

zookeeper的作用:

hbase使用zookeeper做為分布式協調服務來維護及群眾server的狀態。zookeeper維護處於活狀態並可使用的severs,並提供server故障通知。zookeeper使用共識來保證共同共享的狀態。

2、region server執行在hdfs的datanode具備的元件:

(1). wal:預寫日誌是分布式檔案系統上的檔案。wal用於儲存尚未被永久儲存的新資料,用於故障情況下的恢復。

(2). blockcache:是讀取快取。在記憶體中儲存頻繁讀取的資料,近期最少使用的資料在滿時被刪除。

(3). memstore:是寫入快取。儲存尚未寫入磁碟的資料。在寫入磁碟之前進行排序,每個region的每個column family有乙個memstore。

(4). 在磁碟上,hfiles將行儲存為已排序的keyvalues。

3、strore的資料儲存:

當memstrore積聚了足夠的資料,整個有序集合被寫入到hdfs的hfile中。hbase每個列族使用多個hfile,其中包含真正的cell或者keyvalue例項。隨著時間的推移,在menstore中跟據keyvalue排序,最終重新整理到磁碟hfile檔案中。

注意這也是hbase為什麼限制列族數量的乙個原因。每個列族只有乙個memstore;當乙個memstore資料滿了,會重新整理到磁碟檔案中。它還儲存了最近寫入的序列號,以便讓系統知道到目前為止持久化的情況。

資料儲存在hfile中,其中包含排序的key/value。當memstore累積足夠的資料時,整個已排序的keyvalue集將被寫入hdfs中的新hfile。這是乙個順序寫入。它速度非常快,因為它避免了移動磁碟驅動器磁頭。

**可以水平劃分為乙個或者多個region。早start key和end key之間包含連續的,排序的行範圍。

每個region小為1gb(預設)

表的region通過regionserver為客戶端提供服務。

最初每個**有乙個區域。當乙個region變得太大時,它會**成兩個子region。代表原region的一半的兩個子region,在相同的regionserver上並行開啟,然後將分割槽報告給hmaster。由於負載平衡的原因,hmaster可以安排將新region移動到其他伺服器。

5、hbase四個優點:

(1). 強一致性模型

(2). 自動擴充套件

(3). 內建恢復機制

(4). 整合hadoop

HBase入門 優化技巧

hbase優化技巧 這篇文章淺顯的從幾個方面談談hbase的一些優化技巧,只能作為我學習筆記的一部分,因為學多了怕忘,留給自己以後看看。1 修改 linux 系統引數 linux系統最大可開啟檔案數一般預設的引數值是1024,如果你不進行修改併發量上來的時候會出現 too many open fil...

HBase的rowKey設計技巧

本篇部落格小菌為大家帶來的是hbase的rowkey設計技巧 hbase是三維有序儲存的,通過rowkey 行鍵 column key column family和qualifier 和timestamp 時間戳 這個三個維度可以對hbase中的資料進行快速定位。hbase中rowkey可以唯一標識...

Hbase 學習筆記 Hbase 概覽

hbase構建在 hdfs 之上,hbase內部管理的檔案全部儲存在hdfs 中 行鍵,table的主鍵,table中的記錄按照row key排序。型別為byte array 列簇,table在水平方向有乙個或者多個column family組成,乙個column family中可以由任意多個col...