鸿 网 互 联 www.68idc.cn

Hbase安装详解

来源:互联网 作者:佚名 时间:2016-05-15 06:52
一、简介 HBase – Hadoop Database,是一个高可靠性、高性能、面向列、可伸缩的分布式存储系统,利用HBase技术可在廉价PC Server上搭建起大规模结构化存储集群。HBase利用Hadoop HDFS作为其文件存储系统,利用Hadoop MapReduce来处理HBase中的海量数据,利

一、简介

HBase – Hadoop Database,是一个高可靠性、高性能、面向列、可伸缩的分布式存储系统,利用HBase技术可在廉价PC Server上搭建起大规模结构化存储集群。HBase利用Hadoop HDFS作为其文件存储系统,利用Hadoop MapReduce来处理HBase中的海量数据,利用Zookeeper作为协调工具。

1.HBase(NoSQL)的数据模型

1)        表(table),是存储管理数据的。

2)        行键(row key),类似于MySQL中的主键。行键是HBase表天然自带的。

3)        列族(column family),列的集合。

a)  HBase中列族是需要在定义表时指定的,列是在插入记录时动态增加的。

b)  HBase表中的数据,每个列族单独一个文件。

4)        时间戳(timestamp),列(也称作标签、修饰符)的一个属性。行键和列确定的单元格,可以存储多个数据,每个数据含有时间戳属性,数据具有版本特性。如果不指定时间戳或者版本,默认取最新的数据。

5)        存储的数据都是字节数组。

6)        表中的数据是按照行键的顺序物理存储的。

 

2.HBase的物理模型

1)        HBase是适合海量数据(如20PB)的秒级简单查询的数据库。

2)        HBase表中的记录,按照行键进行拆分, 拆分成一个个的region。许多个region存储在regionserver(单独的物理机器)中的。这样,对表的操作转化为对多台region server的并行查询。

 

3.HBase的体系结构

 HBase是主从式结构,HMaster、HRegionServer

 

二、本地伪分布式安装

我使用的是HBase-0.94.7   http://pan.baidu.com/s/1nvvlBx3

1.  解压

解压到/usr/local/hbase-0.94.7-securitu目录,我的安装包在桌面。

命令:sudo tar –zxvf /home/zhong/Desktop/ hbase-0.94.7-security.tar.gz  –C /usr/local


2.  设置环境变量

命令:sudo  vim  /etc/profile

增加:export HBASE_HOME=/usr/local/hbase-0.94.7-security

    export PATH=$HBASE_HOME/bin:$PATH

完成后执行命令:source /etc/profile 使环境变量生效


3.  修改HBASE_HOME/conf目录下hbase-env.sh文件

修改:exportJAVA_HOME=/usr/lib/java/jdk1.7.0_80

    export HBASE_MANAGES_ZK=true  #告诉HBase使用它自己的zookeeper实例,分布式模式下需要设置为false


4.   修改HBASE_HOME/conf目录下hbase-site.xml文件

 

<configuration>
        <property>
         <name>hbase.rootdir</name>
         <value>hdfs://localhost:9000/hbase</value>
        </property>
        <property>
         <name>hbase.cluster.distributed</name>
          <value>true</value>
        </property>
        <property>
         <name>hbase.zookeeper.quorum</name>
          <value>localhost</value>
        </property>
        <property>
          <name>dfs.replication</name>
          <value>1</value>
        </property>
</configuration>



5.     启动

HBase是建立在HadoopHDFS之上的,因此在启动HBase之前要确保已经启动了Hadoop

在HBASE_HOME/bin目录下执行命令:start-hbase.sh


      用命令:jps 检验会发现多了三个java进程:HMaster、HRegionServer以及HQuorumPeer。


   也可以通过Web接口访问:http://localhost:60010

 


三、完全分布式安装

本次是基于上面伪分布式模式的基础上进行完全分布式安装的。

1. 修改HBASE_HOME/conf/hbase-env.sh文件

修改:exportHBASE_MANAGES_ZK=false  #不使用HBase自带的zookeeper实例


   2. 修改HBASE_HOME/conf/ regionservers文件

       将原来的内容修改如下图,其中Slave1,Slave2是我的两个从节点


3.修改HBASE_HOME/conf/hbase-site.xml文件

<configuration>
        <property>
         <name>hbase.rootdir</name>
         <value>hdfs://Master:9000/hbase</value>
        </property>
        <property>
         <name>hbase.cluster.distributed</name>
          <value>true</value>
        </property>
        <property>
          <name>hbase.zookeeper.quorum</name>
         <value>Master,Slave1,Slave2</value>
        </property>
        <property>
         <name>dfs.replication</name>
          <value>1</value>
        </property>
</configuration>


4.在其他两个从节点上做同样配置,可使用scp命令

5.启动

注意先后顺序:先启动Hadoop,再启动ZooKeeper,再启动Hbase

关闭顺序:HbaseàZooKeepeàHadoop

HBase启动命令:start-hbase.sh

HBase关闭命令:stop-hbase.sh



通过Web访问Hbase接口:Master:60010


6.  使用

在HBASE_HOME/bin 目录下执行命令:hbaseshell 可以进入HBase的shell窗口


网友评论
<