1. 程式人生 > >HBase有什麼優點和缺點

HBase有什麼優點和缺點

HBase:

HBase是一個建立在HDFS之上的分散式,提供高可靠性,高效能,列儲存,可伸縮,實時讀寫NoSQL的資料庫系統。

HBase的優點: 

(1)大:一個表可以有上十億行,上百萬列。

(2)面向列:面向列(簇)的儲存和許可權控制,列(簇)獨立檢索。

(3)稀疏:對於為空(null)的列並不佔用記憶體空間,因此,表可以設計的非常稀疏。

(4)多版本:每個單元中的資料可以有多個版本,預設情況下版本號自動分配,是單元格插入時的時間戳。

(5)資料型別單一:HBase中資料型別都是字串。

(6)無模式:每一行都有一個可以排序的rowKey和任意多的列,列可以根據需要動態增加,同一張表的不同行可以有截然不同的列。

(7)高可靠性:WAL預寫式日誌(write-ahead log)機制保證了資料寫入時不會因叢集異常而導致寫入資料丟失,Replication機制保證了在叢集出現嚴重的問題時,資料不會發生丟失或損壞。而且Hbase底層使用HDFS,HDFS本身也有備份。

(8)高效能:底層的LSM資料結構和Rowkey有序排列等架構上的獨特設計,使得Hbase具有非常高的寫入效能。region切分,主鍵索引和快取機制使得Hbase在海量資料下具備一定的隨機讀取效能,該效能針對Rowkey的查詢能到達到毫秒級別。

HBase的缺點:

(1):雖然HBase是一個非關係型資料庫但是它不支援SQL語句。

(2):單一RowKey固有的侷限性決定了它不可能有效地支援多條件查詢