1 Hbase入門教程html
HBase是一個分佈式的、面向列的開源數據庫,該技術來源於 FayChang 所撰寫的Google論文「Bigtable:一個結構化數據的分佈式存儲系統」。就像Bigtable利用了Google文件系統(File System)所提供的分佈式數據存儲同樣,HBase在Hadoop之上提供了相似於Bigtable的能力。HBase是Apache的Hadoop項目的子項目。HBase不一樣於通常的關係數據庫,它是一個適合於非結構化數據存儲的數據庫。另外一個不一樣的是HBase基於列的而不是基於行的模式。數據庫
HBase在Hadoop生態位置圖1-1apache
一、行鍵Row Key:主鍵是用來檢索記錄的主鍵,訪問hbasetable中的行。數據結構
二、列族Column Family:Table在水平方向有一個或者多個ColumnFamily組成,一個ColumnFamily中能夠由任意多個Column組成,即ColumnFamily支持動態擴展,無需預先定義Column的數量以及類型,全部Column均以二進制格式存儲,用戶須要自行進行類型轉換。dom
三、列column:由Hbase中的列族ColumnFamily + 列的名稱(cell)組成列。分佈式
四、單元格cell:HBase中經過row和columns肯定的爲一個存貯單元稱爲cell。oop
五、版本version:每一個 cell都保存着同一份數據的多個版本。版本經過時間戳來索引。學習
六、Hbase數據結構圖:測試
rowkey(行鍵)spa |
product |
|
food(列族) |
|
name(列標識符) |
price(列標識符) |
name |
price(列標識符) |
|
rowkey001 |
ThinkPad E550 |
4199 |
orange |
6.0 |
version(版本) |
||||
5.0 |
||||
5.5 |
||||
6.0 |
HBase數據結構圖1-2
Hbase是創建Hadoop基礎上的數據庫文件,所以Hbase是分佈式的數據庫。Hbase也提供了單機版的安裝。
Hadoop和Hbase版本關係表:
版本 |
HBase-0.94.x |
HBase-0.98.x |
HBase-1.0.x |
HBase-1.1.x |
HBase-1.2.x |
Hadoop-1.0.x |
X |
X |
X |
X |
X |
Hadoop-1.1.x |
S |
NT |
X |
X |
X |
Hadoop-0.23.x |
S |
X |
X |
X |
X |
Hadoop-2.0.x-alpha |
NT |
X |
X |
X |
X |
Hadoop-2.1.0-beta |
NT |
X |
X |
X |
X |
Hadoop-2.2.0 |
NT |
S |
NT |
NT |
X |
Hadoop-2.3.x |
NT |
S |
NT |
NT |
X |
Hadoop-2.4.x |
NT |
S |
S |
S |
S |
Hadoop-2.5.x |
NT |
S |
S |
S |
S |
Hadoop-2.6.0 |
X |
X |
X |
X |
X |
Hadoop-2.6.1+ |
NT |
NT |
NT |
NT |
S |
Hadoop-2.7.0 |
X |
X |
X |
X |
X |
Hadoop-2.7.1+ |
NT |
NT |
NT |
NT |
S |
Hadoop和JDK版本關係表:
Hbase版本 |
JDK 6 |
JDK 7 |
JDK 8 |
1.2 |
Not Supported |
yes |
yes |
1.1 |
Not Supported |
yes |
Not Supported |
1 |
Not Supported |
yes |
Not Supported |
0.98 |
yes |
yes |
Not Supported |
0.94 |
yes |
yes |
N/A |
- S = supported and tested,支持
- X = not supported,不支持
- NT = not tested enough.能夠運行但測試不充分
在《Hadoop教程(五)Hadoop分佈式集羣部署安裝》安裝的是Hadoop-2.7.1版本,在此須要下載Hbase-1.2.x版本:
下載地址:http://mirror.bit.edu.cn/apache/hbase/1.2.1/hbase-1.2.1-bin.tar.gz
一、配置本機hosts
127.0.0.1 localhost
127.0.0.1 hbase-domain hbase
二、下載hbase-1.2.1-bin.tar到目錄位置:/usr/local/software/
執行命令:
mkdir /usr/local/software
cd /usr/local/software
wget http://mirror.bit.edu.cn/apache/hbase/1.2.1/hbase-1.2.1-bin.tar.gz
三、解壓Hbase
執行命令:tar -zxvf hbase-1.2.1-bin.tar.gz
重命名:mv hbase-1.2.1 hbase_1.2.1
四、配置環境變量
export JAVA_HOME=/usr/local/software/jdk1.8.0_66
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export HBASE_HOME=/usr/local/software/hbase_1.2.1
export PATH=.:$JAVA_HOME/bin:$HBASE_HOME/bin:$PATH
五、修改hbase-env.sh配置文件
執行命令:
vi /usr/local/software/hbase_1.2.1/conf/hbase-env.sh
修改內容:
export JAVA_HOME=/usr/local/software/jdk1.8.0_66
六、修改hbase-site.xml配置文件
執行命令:vi/usr/local/software/hbase_1.2.1/conf/hbase-site.xml
七、啓動Hbase
執行命令:/usr/local/software/hbase_1.2.1/bin/start-hbase.sh
八、驗證啓動
執行命令:jps,查看運行的Hbase進程
1. 《Hbase權威指南》
2. 《Hbase實戰》
3. 《Hbase企業應用開發實站》
4. 《Learning HBase(中文版)》
5. 《HBase管理指南》
--以上爲《Hbase教程(一) Hbase入門教程》,若有不當之處請指出,我後續逐步完善更正,你們共同提升。謝謝你們對個人關注。
——厚積薄發(yuanxw)