Linux环境:CentOS6.5

HBase版本:hbase-0.94.16

HBase官网:http://hbase.apache.org

1.下载解压安装文件

# wget http://mirror.bit.edu.cn/apache/hbase/stable/hbase-0.94.16.tar.gz
# tar xvfz hbase-0.94.16.tar.gz


2.启动HBase

# /usr/hbase-0.94.16/bin/start-hbase.sh

如果报错

+======================================================================+
 |      Error: JAVA_HOME is not set and  Java could not be found         |
 +----------------------------------------------------------------------+
 | Please download the latest Sun JDK from the Sun  Java web site        |
 |       > http://java.sun.com/javase/downloads/ <                      |
 |                                                                      |
 |  Hadoop requires Java 1.6 or later.                                   |
 | NOTE: This script will find Sun Java whether you install using the   |
 |       binary or the RPM based installer.                             |
 +======================================================================+

如图所示

hbase 手动split无效 hbase setautoflush_hbase 手动split无效

需要修改HBase的配置文件,配置文件在conf文件夹下
# vi conf/hbase-env.sh

增加JDK的位置,以本机为例JDK被放在/usr/lib/jdk下

1. export JAVA_HOME=/usr/lib/jdk/jdk1.7.0_51/



需要说明的是,JDK是要自己安装的,如果系统已经自带JDK是需要删除重新自己安装比较好。

关于JDK的卸载与安装可以参考这里:

Linux环境安装卸载JDK

不然修改配置文件启动还是没用的!


重新启动HBase

# /usr/hbase-0.94.16/bin/start-hbase.sh

如果成功启动会有如下提示信息:

1. starting master, logging to /usr/hbase-0.94.16/bin/../logs/hbase-root-master-localhost.localdomain.out


hbase 手动split无效 hbase setautoflush_配置文件_02



3.查看管理界面

运行在端口http://localhost:60010

hbase 手动split无效 hbase setautoflush_REST_03


当前的tables列表:

hbase 手动split无效 hbase setautoflush_配置文件_04

点击details查看所有

hbase 手动split无效 hbase setautoflush_Java_05


4.使用HBase Shell命令行

可以通过HBase Shell和HBase交互

# /usr/hbase-0.94.16/bin/hbase

hbase 手动split无效 hbase setautoflush_Java_06

# /usr/hbase-0.94.16/bin/hbase shell

这说明Java和HBase函数库已经安装成功,列出HBase中的所有表可以使用list命令。

hbase 手动split无效 hbase setautoflush_Java_07


建表

hbase 手动split无效 hbase setautoflush_Java_08


输入数据

hbase 手动split无效 hbase setautoflush_hbase 手动split无效_09

scan可以扫描全表


删除命令技巧

如果要删除输入错误的命令,不能直接按删除键删除输入错误的命令字符,需要做一些设置

方法一:在SecureCRT中可以这样设置:选项--会话选项--终端--仿真  修改终端为linux,注意勾选“使用颜色方案”。

然后就可以按Ctrl+Backspace   实现删除

hbase 手动split无效 hbase setautoflush_配置文件_10

方法二:如果使用用xshell这个工具,可以直接按Ctrl+Backspace   实现删除


5.HBase常用命令

hbase 手动split无效 hbase setautoflush_hbase 手动split无效_11

6.建表

表结构

hbase 手动split无效 hbase setautoflush_REST_12

建表命令

create 'GDP','city','code','count'
 put 'GDP','SH','code:','021'
 put 'GDP','BJ','code:','010'
 put 'GDP','GZ','code:','020'
 put 'GDP','SH','count:pop','2500'
 put 'GDP','SH','count:area','6340'
 put 'GDP','SH','count:gdp','20100'
 put 'GDP','BJ','count:pop','2100'
 put 'GDP','BJ','count:area','16410'
 put 'GDP','BJ','count:gdp','19500'
 put 'GDP','GZ','count:pop','1275'
 put 'GDP','GZ','count:area','7434'
 put 'GDP','GZ','count:gdp','13500'


hbase 手动split无效 hbase setautoflush_REST_13

hbase 手动split无效 hbase setautoflush_Java_14

分别查出所有信息和SH的信息。


7.使用REST访问HBase


启动REST服务

# /usr/hbase-0.94.16/bin/hbase rest

hbase 手动split无效 hbase setautoflush_REST_15


启动REST服务,监听9999端口

# /usr/hbase-0.94.16/bin/hbase rest start -p 9999

hbase 手动split无效 hbase setautoflush_配置文件_16

在浏览器以及可以访问HBase的REST了

http://localhost:9999/

hbase 手动split无效 hbase setautoflush_Java_17

http://localhost:9999/version

hbase 手动split无效 hbase setautoflush_Java_18

使用curl访问HBase的REST

# curl -H "Accept: application/json" http://192.168.2.111:9999/GDP/SH/

hbase 手动split无效 hbase setautoflush_Java_19


访问“SH”的数据

# curl -H "Accept: application/json" http://192.168.2.111:9999/GDP/SH/
# curl -H "Accept: application/json" http://192.168.2.111:9999/GDP/SH/count:area

hbase 手动split无效 hbase setautoflush_配置文件_20

注意输出是JSON格式数据,以Base64编码字符串形式返回的,我们可以验证其中的:

MDIx解码就是021

MDEw解码就是010

就是之前录入的上海和北京的区号。