本次测试安装的机器为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
然后去看日志:
-- ::53.287 java[:] 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)::> help
创建一张测试表:
hbase(main)::> create 'test', 'cf'
列出表信息:
hbase(main)::> 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)::> scan 'test'
ROW COLUMN+CELL
row1 column=cf:a, timestamp=, value=value1
row2 column=cf:b, timestamp=, value=value2
row3 column=cf:c, timestamp=, value=value3
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 *. *.* LISTEN
tcp46 *. *.* LISTEN
tcp4 10.10.10.232. *.* LISTEN
tcp4 10.10.10.232. *.* LISTEN