您的位置:首页 > 其它

HBase集群环境搭建及概念介绍

2016-11-04 10:07 447 查看

一、前言

HBase是一个构建在HDFS上的分布式列存储系统,HBase是基于Google BigTable模型开发的,典型的key/value系统;

HBase是Apache Hadoop生态系统中的重要一员,主要用于海量结构化数据存储;

从逻辑上讲,HBase将数据按照表、行和列进行存储。与hadoop一样,Hbase目标主要依靠横向扩展,通过不断增加廉价的商用服务器,来增加计算和存储能力。

Hbase表的特点

大:一个表可以有数十亿行,上百万列;

无模式:每行都有一个可排序的主键和任意多的列,列可以根据需要动态的增加,同一张表中不同的行可以有截然不同的列;

面向列:面向列(族)的存储和权限控制,列(族)独立检索;

稀疏:空(null)列并不占用存储空间,表可以设计的非常稀疏;

数据多版本:每个单元中的数据可以有多个版本,默认情况下版本号自动分配,是单元格插入时的时间戳;

数据类型单一:Hbase中的数据都是字符串,没有类型

二、概念

RowKey:是Byte array,是表中每条记录的“主键”,方便快速查找,Rowkey的设计非常重要。

Column Family:列族,拥有一个名称(string),包含一个或者多个相关列

Column:属于某一个columnfamily,familyName:columnName,每条记录可动态添加

Version Number:类型为Long,默认值是系统时间戳,可由用户自定义

Value(Cell):Byte array,更详细的可以参考参考

三、安装配置

1、JDK环境配置

2、Zookeeper集群配置参考

3、Hadoop集群配置参考

4、上述都已经配置完成开始HBase集群环境搭建

本次使用HBase版本:
hbase-1.2.3-bin.tar.gz


在hadoop01上下载hbase发行版本统一配置

wget http://apache.fayea.com/hbase/stable/hbase-1.2.3-bin.tar.gz[/code] 
下载完成后解压文件:
tar -zxvf hbase-1.2.3-bin.tar.gz




注意:要把hadoop的hdfs-site.xml和core-site.xml 放到hbase/conf下

1、修改hbase-env.sh





2、修改hbase-site.xml文件

<configuration>
<property>
<name>hbase.master</name>
<value>hadoop01:60000</value>
</property>
<property>
<name>hbase.master.maxclockskew</name>
<value>180000</value>
</property>
<!-- 指定hbase在HDFS上存储的路径 -->
<property>
<name>hbase.rootdir</name>
<value>hdfs://ns1/hbase</value>
</property>
<!-- 指定hbase是分布式的 -->
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<!-- 指定zk的地址,多个用“,”分割 -->
<property>
<name>hbase.zookeeper.quorum</name>
<value>zk01:2181,zk02:2181,zk03:2181</value>
</property>
<property>
<name>hbase.zookeeper.property.dataDir</name>
<value>/home/hadoop/hbase/tmp/zookeeper</value>
</property>
</configuration>


3、修改regionservers 配置子节点

hadoop03
zk01
zk02
zk03


4、拷贝hbase到其他节点

scp -r hbase-1.2.3 hadoop02:/opt/soft/
scp -r hbase-1.2.3 hadoop03:/opt/soft/
scp -r hbase-1.2.3 zk01:/opt/soft/
scp -r hbase-1.2.3 zk02:/opt/soft/
scp -r hbase-1.2.3 zk03:/opt/soft/


5、启动Hbase

在hadoop01上启动Hbase
start-dfs.sh




在Hadoop01的机器上有HMaster进程,在其他机器有HRegionServer进程



为保证集群的可靠性,要启动多个HMaster,在hadoop02中启动HMaster

./hbase-daemon.sh start master




启动完成后通过浏览器查看Hbase

http://192.168.0.11:16010/




通过浏览器查看Hadoop中HDFS文件系统中有
/hbase
文件夹

可以使用HBase的命令行来操作HBase,以后会讲解HBase中JAVA api的使用



有什么不对的请大家多多指点。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: