從hbase 0.94到0.96的改變

在hbase中,由於是開源的開發系統,
因此,在不同hbase版本間,容易出現相依性的問題.
以所使用的hbase 0.94.x系統為例,
若是要升級為0.96的hbase系統,將必須做出甚麼改變呢?

hbase 0.96相對於0.94而言,是一次巨大的改版,
在0.96的昇級文件中,公布了下列的改變:
(翻譯的並不完整,已有興趣的項目為主...)

(Mean Time To Recovery)
在原本hbase的架構下,一個Region由一個RegionServer服務,
當服務的RegionServer離開(offline)時,資料將暫時無法存取,
直到被指配到另一個RegionServer,
對於hbase而言,資料無法存取的時間包含了:
偵測周期(detection phase),修復周期(repair phase),重新指派時間(reassignment)
以及使用者知會時間(clients noticing the data available in its new location)
在hbase 0.96版中,對於這些時間都有新的方法改善,
減低資料無法存取的時間.

(Support for Namespaces)
提供Namespace的支援

(New Region Balancer)
新的Load Balancing演算法,不同於hbase 0.94只看Region的個數,
在0.96的版本中,也考慮了讀寫的需求(read/write load),資料的位址(locality),
以及其他特性.

(Cell)
在hbase 0.96版中,揚棄了原有的KeyValue的架構,
而改用cell的方式來提供資料存取的介面,
在hbase 0.96中使用新的cell api,而原本的KeyValue api則不再支援.

(Incompatible changes)
(1) -ROOT-表從hbase架構中移除
(2) ZooKeeper命名方式改變
(3) 停止支援HFile V1 (和hadoop的相依性有關)
(4) 停止支援Avro

(Miscellaneous)
(1) 支援即時Region合併(Online Region merging)
(2) 支援Windows作業系統
(3) 支援hadoop1和hadoop 2
(4) 調整預設數值,使預設數值得效能更好


參考資料:
https://blogs.apache.org/hbase/entry/hbase_0_96_0_released

留言

熱門文章

LTE筆記: RSRP, RSSI and RSRQ

[WiFi] WiFi 網路的識別: BSS, ESS, SSID, ESSID, BSSID

LTE筆記: 波束成型 (beamforming) 和天線陣列