HBase 基础

1.HBase基本介绍

    HBase项目地址:http://hbase.apache.org/

    HBase 是Apache下的一个开源分布式Nosql存储数据库。基于列式存储,运行于HDFS分布式存储系统之上,参考Google的Bigtable论文实现。

    HBase满足CAP定理中的CP。具体CAP定理可参考:WIKI about CAP

2.HBase配置安装

   由于HBase数据存储是放在HDFS上,所以HBase的配置安装需要依赖HDFS的安装。本文重点是对HBase的介绍说明,关于HDFS相关内容后续会单独介绍,因此在此假设各节点HDFS已经部署完成。

   1.首先准备三台Linux机器,创建hadoop用户,home目录设置为/opt/hadoop/,打通三台机器间hadoop用户ssh免密(此步非必需,但推荐配置)。

      (本博客所用三台机器IP:192.168.10.10,192.168.10.11,192.168.10.12)

   2.在三台机器上分别配置安装zookeeper。(下面简单介绍一下zk的配置安装)

      2.1 从git上下载zookeeper版本。Zookeeper git 地址,本博客使用版本是3.4.6

      2.2 解压下载的tar包到/opt/hadoop/目录下。建立软连接ln -s /opt/hadoop/zookeeper-3.4.6 /opt/hadoop/zookeeper。

      2.3 将zookeeper/conf/zoo_sample.cfg 拷贝重命名为zookeeper/conf/zoo.cfg

      2.4 修改zoo.cfg配置:

          

dataDir=/opt/hadoop/hadoop/zkdata
server.1=192.168.10.10:2888:3888
server.2=192.168.10.11:2888:3888
server.3=192.168.10.12:2888:3888

 

      2.5 将此配置三节点之间同步,保持一致。

      2.6 在三个节点分别创建/opt/hadoop/hadoop/zkdata目录,在此目录下建立文件myid,按照配置中的对应,在10节点myid文件中输入1,在11节点输入2,在12节点输入3

      2.7 启动zk,进入zookeeper/bin目录,执行命令sh zkServer.sh start。可以通过zkServer.sh status查看当前节点的状态。

   3.从git上下载要安装的hbase版本。HBase git 地址。本博客系列所使用的版本是0.98.11

   4.在10节点/opt/hadoop目录下解压,建立软连接ln -s /opt/hadoop/hbase-0.98.11-hadoop2 /opt/hadoop/hbase

   5.配置

      进入/opt/hadoop/hbase/conf/目录,该目录主要有以下文件:

       hadoop-metrics2-hbase.properties   hbase提供了metric监控收集机制,通过该配置文件配置。
       hbase-env.cmd                              hbase提供的window环境配置
       hbase-env.sh                                 配置hbase的环境变量等信息
       hbase-policy.xml                            配置hbase的权限等信息
       hbase-site.xml                               hbase基础配置文件
       log4j.properties                             日志
       regionservers                                集群regionserver节点配置
 
     本文简要介绍hbase-env.sh和hbase-site.xml,regionserver配置,目的为让hbase集群能正常启动运行,具体配置信息后续会展开分析。
      hbase-env.sh配置如下信息:
export JAVA_HOME=/opt/java
export HBASE_HOME=/opt/hadoop/hbase
export HBASE_REGIONSERVERS=${HBASE_HOME}/conf/regionservers
export HBASE_BACKUP_MASTERS=${HBASE_HOME}/conf/backup-masters
export HBASE_LOG_DIR=/opt/hadoop/logs/hbase_logs
export HBASE_PID_DIR=/opt/hadoop/hadoop/pid/hbase
export HBASE_MANAGES_ZK=false

      hbase-site.xml配置如下信息:

<property>
    <name>hbase.rootdir</name>
    <value>hdfs://hsdfurl/hbase</value>
</property>
<property>
     <name>hbase.cluster.distributed</name>
     <value>true</value>
</property>
<property>
     <name>hbase.zookeeper.quorum</name>
     <value>192.168.10.10,192.168.10.11,192.168.10.12</value>
</property>
<property>
    <name>hbase.zookeeper.property.clientPort</name>
    <value>2181</value>
</property>
<property>
    <name>zookeeper.znode.parent</name>
    <value>/hbase</value>
</property>

      regionserver配置如下信息:

192.168.10.11
192.168.10.12

   6.将10节点配置完成的hbase拷贝至11,12节点,分别建立软连接。

   7.在10节点上启动master

/opt/hadoop/hbase/bin/hbase-daemon.sh start master 

       启动所有regionserver

/opt/hadoop/hbase/bin/hbase-daemons.sh start regionserver

   8.在浏览器输入192.168.10.10:16010即可打开master的web ui。(注意:如果是0.98以前的版本端口是60010,0.99/1.0+版本端口是16030)。

      该web ui页面会在3.1HBase运维一节中解析。

3.HBase使用用例

     1.3.1.增
     1.3.2.删
     1.3.3.改
     1.3.4.查

4.HBase基本概念

     1.4.1.表,rowkey,列蔟,列
     1.4.2.数据版本TTL
     1.4.3.root,meta,namespace表
     1.4.4.master,regionserver,thriftserver
     1.4.5.get,scan

5.HBase常用命令

     1.5.1.shell所有命令
posted @ 2015-12-03 12:05  小兵章嘎  阅读(340)  评论(0)    收藏  举报