本文档主要介绍在文件存储HDFS上使用Apache HBase的方法。

准备工作

在文件存储HDFS上搭建和使用Apache HBase,需要先完成以下准备工作。

说明 如果您使用的是CDH或者阿里云E-MapReduce中内置的HBase,请参见在文件存储HDFS上使用CDH6在文件存储HDFS上使用E-MapReduce
  • 开通文件存储HDFS服务并创建文件系统实例和挂载点,请参见HDFS快速入门
  • 在Hadoop集群所有节点上安装JDK,版本不能低于1.8。
  • 在Hadoop集群中配置文件存储HDFS实例,请参见挂载文件系统
  • 在Hadoop集群中安装Apache HBase,并将hbase.rootdir值替换为您的文件存储HDFS目录。具体操作,请参见Apache HBase Reference Guide

    本文档使用Hadoop-2.8.5和HBase-2.2.6测试验证。更多信息,请参见HBase官网Hadoop版本兼容性说明

配置Apache HBase

Hadoop集群各个节点的${HBASE_HOME}/conf/hbase-site.xml文件中需要修改的配置项:
<property>
  <name>hbase.rootdir</name>
  <value>dfs://f-xxxxxxxxxxxxxxx.cn-xxxxxxx.dfs.aliyuncs.com:10290/hbase</value>
</property>
其中,f-xxxxxxxxxxxxxxx.cn-xxxxxxx.dfs.aliyuncs.com是您的文件存储HDFS挂载点域名,请根据实际情况修改。

验证Apache HBase

下面以独立部署的HBase为例,执行创建test表、插入数据等操作来验证可用性。以下命令均在${HBASE_HOME}目录下执行。

  1. 启动HBase。
    ./bin/start-hbase.sh
    HBase启动成功后,可以在文件存储HDFS上查看hbase.rootdir中自动创建的目录和文件。Hbase-1
  2. 连接HBase。
    ./bin/hbase shell
    HBase-2
  3. 创建test表,列族名为cf
    create 'test', 'cf'
    HBase-3
  4. 查看test表详细信息。
    desc 'test'
    HBase-4
  5. 向test表中插入数据,并查看这些数据。
    put 'test', 'row1', 'cf:a', 'value1'
    put 'test', 'row2', 'cf:b', 'value2'
    put 'test', 'row3', 'cf:c', 'value3'
    scan 'test'
    get 'test', 'row1'
    get 'test', 'row2'
    HBase-5
  6. 删除test表。
    disable 'test'
    drop 'test'
    HBase-6