HBase分布式儲存系統(tǒng)


【HBase簡介】
HBase是一個分布式的、面向列的開源數(shù)據(jù)庫,該技術(shù)來源于 Fay Chang 所撰寫的Google論文“Bigtable:一個結(jié)構(gòu)化數(shù)據(jù)的分布式存儲系統(tǒng)”。就像Bigtable利用了Google文件系統(tǒng)(File System)所提供的分布式數(shù)據(jù)存儲一樣,HBase在Hadoop之上提供了類似于Bigtable的能力。HBase是Apache的Hadoop項(xiàng)目的子項(xiàng)目。HBase不同于一般的關(guān)系數(shù)據(jù)庫,它是一個適合于非結(jié)構(gòu)化數(shù)據(jù)存儲的數(shù)據(jù)庫。另一個不同的是HBase基于列的而不是基于行的模式。
?
【HBase結(jié)構(gòu)】
HBase–Hadoop Database,是一個高可靠性、高性能、面向列、可伸縮的分布式存儲系統(tǒng),利用HBase技術(shù)可在廉價PC Server上搭建起大規(guī)模結(jié)構(gòu)化存儲集群。
與FUJITSU Cliq等商用大數(shù)據(jù)產(chǎn)品不同,HBase是Google Bigtable的開源實(shí)現(xiàn),類似Google Bigtable利用GFS作為其文件存儲系統(tǒng),HBase利用Hadoop HDFS作為其文件存儲系統(tǒng);Google運(yùn)行MapReduce來處理Bigtable中的海量數(shù)據(jù),HBase同樣利用Hadoop MapReduce來處理HBase中的海量數(shù)據(jù);Google Bigtable利用 Chubby作為協(xié)同服務(wù),HBase利用Zookeeper作為對應(yīng)。
上圖描述Hadoop EcoSystem中的各層系統(tǒng)。其中,HBase位于結(jié)構(gòu)化存儲層,Hadoop HDFS為HBase提供了高可靠性的底層存儲支持,Hadoop MapReduce為HBase提供了高性能的計算能力,Zookeeper為HBase提供了穩(wěn)定服務(wù)和failover機(jī)制。
此外,Pig和Hive還為HBase提供了高層語言支持,使得在HBase上進(jìn)行數(shù)據(jù)統(tǒng)計處理變的非常簡單。 Sqoop則為HBase提供了方便的RDBMS數(shù)據(jù)導(dǎo)入功能,使得傳統(tǒng)數(shù)據(jù)庫數(shù)據(jù)向HBase中遷移變的非常方便。
?
【系統(tǒng)學(xué)習(xí)并掌握HBase】
尚硅谷HBase教程
https://www.bilibili.com/video/BV1Y4411B7jy
課程詳情:
HBase是一個基于HDFS的分布式、面向列的開源數(shù)據(jù)庫,是一個結(jié)構(gòu)化數(shù)據(jù)的分布式存儲系統(tǒng),利用HBase技術(shù)可在廉價PC Server上搭建起大規(guī)模結(jié)構(gòu)化存儲集群。在本課程中,主要講述了HBase詳細(xì)的架構(gòu)原理及特點(diǎn)、HBase內(nèi)部各個角色的詳細(xì)介紹、安裝配置、HBase的Shell操作、新舊版本的讀寫數(shù)據(jù)詳細(xì)流程、HBase的API操作、使用MapReduce以及Hive對HBase數(shù)據(jù)分析、Rowkey設(shè)計、預(yù)分區(qū)設(shè)計、調(diào)優(yōu)策略以及結(jié)合谷粒微博項(xiàng)目將核心知識點(diǎn)再次梳理,更熟練的運(yùn)用HBase。
