本次測試安裝的機器為Mac Book Pro, 系統為 OS X 10.9.4。hbase版本0.98.6.1。
使用Java版本為Oracle的JDK 1.6.0_65。
1. 下載安裝 hbase-0.98.6.1
此處下載的是 0.98.6.1,下載后解壓縮。解壓縮后的目錄為 hbase-0.98.6.1-hadoop2/
注:hbase中已經包含hadoop,所以不用另外安裝hadoop了。
2. 修改配置
(1) conf/hbase-env.sh
export JAVA_HOME=/Library/Java/Home
(2) conf/hbase-site.xml
<property> <name>hbase.rootdir</name> <value>file:///Users/beef_in_jp/Documents/hadoop/hbase-0.98.6.1-hadoop2i/hbase</value> </property> <property> <name>hbase.zookeeper.property.dataDir</name> <value>/Users/beef_in_jp/Documents/hadoop/hbase-0.98.6.1-hadoop2/zookeeper</value> </property>
3. 啟動和簡單的測試
(1) 啟動
./bin/start-hbase.sh
執行啟動腳本后顯示的信息:
starting master, logging to /Users/beef_in_jp/Documents/hadoop/hbase-0.98.6.1-hadoop2/bin/../logs/hbase-beef_in_jp-master-Liu-MacBook-Pro.local.out
然后去看日志:
2014-10-09 16:25:53.287 java[18243:1003] Unable to load realm info from SCDynamicStore
這個錯誤在之前的Hadoop安裝測試中也出現過,修改conf/hbase-env.sh,原來的設置:
export HBASE_OPTS="-XX:+UseConcMarkSweepGC"
增加選項,現在為:
export HBASE_OPTS="-XX:+UseConcMarkSweepGC -Djava.security.krb5.realm=OX.AC.UK -Djava.security.krb5.kdc=kdc0.ox.ac.uk:kdc1.ox.ac.uk"
停止hbase,
./bin/stop-hbase.sh
再次啟動,應該成功了。
(2) 簡單測試
啟動hbase shell
./bin/hbase shell
在shell中執行help,查看幫助信息:
hbase(main):001:0> help
創建一張測試表:
hbase(main):002:0> create 'test', 'cf'
列出表信息:
hbase(main):003:0> list 'test'
插入幾條測試數據:
hbase(main):004:0> put 'test', 'row1', 'cf:a', 'value1' hbase(main):005:0> put 'test', 'row2', 'cf:b', 'value2' hbase(main):006:0> put 'test', 'row3', 'cf:c', 'value3'
查詢剛才插入的數據:
hbase(main):008:0> scan 'test' ROW COLUMN+CELL row1 column=cf:a, timestamp=1412845466245, value=value1 row2 column=cf:b, timestamp=1412845472737, value=value2 row3 column=cf:c, timestamp=1412845478332, value=value3 3 row(s) in 0.0490 seconds
查詢單條數據:
hbase(main):010:0> get 'test', 'row1'
COLUMN CELL
cf:a timestamp=1412845466245, value=value1
1 row(s) in 0.0100 seconds
(3) 在瀏覽器中訪問hbase管理界面: http://localhost:60010,
中文版的幫助手冊 http://abloz.com/hbase/book.html
4. 一些細節。
(1) 啟動hbase后,監聽的端口號增加如下:
tcp46 0 0 *.60010 *.* LISTEN tcp46 0 0 *.54436 *.* LISTEN tcp4 0 0 10.10.10.232.54435 *.* LISTEN tcp4 0 0 10.10.10.232.54433 *.* LISTEN