W3Cschool
恭喜您成為首批注冊用戶
獲得88經驗值獎勵
HBase是一種“NoSQL”數據庫?!癗oSQL”是一個通用術語,意思是數據庫不是支持SQL作為其主要訪問語言的RDBMS,但是有許多類型的NoSQL數據庫:BerkeleyDB是本地NoSQL數據庫的一個例子,而HBase是一個分布式數據庫。從技術上講,HBase實際上更像是一個“數據存儲”而不是“數據庫”,因為它缺少在RDBMS中找到的許多功能,例如鍵入列,二級索引,觸發(fā)器和高級查詢語言等。
但是,HBase具有很多支持線性和模塊化縮放的功能。通過添加商品類服務器上托管的RegionServers來擴展HBase集群。例如,如果一個集群從10個擴展到20個RegionServers,則它在存儲和處理能力方面都會翻倍。RDBMS可以很好地擴展,但只能達到某一點 - 具體而言就是單個數據庫服務器的大小 - 并且為了獲得最佳性能,需要專門的硬件和存儲設備。HBase的特點是:
HBase不適合所有問題。
首先,確保你有足夠的數據。如果你有數億或數十億行,那么HBase是一個很好的選擇。如果只有幾千行,那么使用傳統(tǒng)的RDBMS可能是一個更好的選擇,因為所有數據都可能在單個節(jié)點(或兩個)上,而群集的其余部分可能處于閑置狀態(tài)。
其次,確保您可以在沒有RDBMS提供的所有額外功能的情況下生存(例如,鍵入列,二級索引,事務,高級查詢語言等)。針對RDBMS構建的應用程序無法通過簡單更改而“移植”到HBase,例如,一個JDBC驅動程序??紤]從RDBMS轉移到HBase作為一個完整的重新設計,而不是一個端口。
第三,確保你有足夠的硬件。即使是HDFs也不能很好地處理少于5個的數據流(由于HDFS塊復制的默認值為3),加上NAMENODE。
HBase可以在筆記本電腦上獨立運行 - 但這應該只被視為一種開發(fā)配置。
HDFS是一個非常適合存儲大型文件的分布式文件系統(tǒng)。它的文檔指出,它不是一個通用的文件系統(tǒng),也沒有在文件中提供快速的單個記錄查找。另一方面,HBase建立在HDFS之上,為大型表提供快速記錄查找(和更新)。這有時會成為概念混淆的一個觀點。HBase內部將您的數據放入HDFS上的索引“StoreFiles”中進行高速查找。有關HBase如何實現(xiàn)其目標的更多信息,請參閱數據模型和本章的其余部分。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: