设为首页 加入收藏

TOP

4.1HBase安装
2018-11-13 15:31:47 】 浏览:25
Tags:4.1HBase 安装

HBase安装

字体:

实验目的

1.了解HBase的安装流程

2.了解HBase的工作原理

实验原理

HBase是一个分布式的,面向列的开源数据库,该技术来源于Fay Chang所撰写的Google论文”Bigtable:一个结构化数据的分布式存储系统“。HBase不同于一般的关系数据库,它是一个适合于非结构化数据存储的数据库。另一个不同的是HBase基于列而不是基于行模式。在需要实时读写、随机访问超大规模数据集时,可以使用HBase。

上图描述Hadoop Ecosystem中的各层结构。其中,HBase位于结构化存储层,Hadoop HDFS为HBase提供了高可靠性的底层存储支持。Hadoop MapReduce为HBase提供了高性能的计算能力,ZooKeeper为HBase提供了稳定服务和故障切换(failover)机制。此外,Pig和Hive还为HBase提供了高层语言支持,使得在HBase上进行数据统计处理变的非常简单。Sqoop则为HBase提供了方便的RDBMS数据导入功能,使得传统数据库数据向HBase中迁移变的非常方便。

HBase架构图

HBase Master负责管理所有的HRegion,HBase Master并不存储HBase服务器的任何数据,HBase逻辑上的表可能会划分为多个HRegion,然后存储在HRegion Server群中,HBase Master Server中存储的是从数据到HRegion Server的映射。

一台机器只能运行一个HRegion服务器,数据的操作会记录在Hlog中,在读取数据时候,HRegion会先访问缓存,如果缓存中没有数据才回到Hstore中上找,每一个列都会有一个Hstore集合,每个Hstore集合包含了很多具体的HstoreFile文件,这些文件是B树结构的,方便快速读取。

实验环境

Linux Ubuntu 16.04

jdk-7u75-linux-x64

hadoop-2.6.5

实验内容

在已安装好的Hadoop环境基础上,安装并配置HBase。

实验步骤

1.首先在Linux本地,在目录/usr/data/下面新建hbase1目录,用于存放所需文件。

1.cd /usr/data

2.sudo mkdirhbase1

然后进入到目录hbase1下

1.cdhbase1

HBase所需安装包hbase-1.2.6-bin.tar.gz拷贝到当前目录下(hbase-1.2.6-bin.tar.gz下载网址:http://mirrors.hust.edu.cn/apache/hbase/)。

2.将/usr/data/hbase1目录下,HBase的安装包hbase-1.2.6-bin.tar.gz,解压缩到/usr/apps目录下。

1.tar-zxvf/usr/data/hbase1/hbase-1.2.6-bin.tar.gz-C/usr/apps

再切换到/usr/apps目录下,将/usr/apps/hbase-1.2.6-bin.tar.gz/,重命名为hbase。

1.cd/usr/apps

2.mv/usr/apps/hbase-1.2.6-bin.tar.gz//usr/apps/hbase

3.添加HBase的环境变量。首先使用gedit(或vi/vim等)打开用户环境变量文件。

1.sudogedit/etc/profile

在环境变量文件末尾位置,追加HBase的bin目录路径相关配置,并保存退出。即下列内容:

1.#hbase

2.exportHBASE_HOME=/usr/apps/hbase

3.exportPATH=$HBASE_HOME/bin:$PATH

执行source命令,使环境变量生效。

1.source/etc/profile

此时就可以调用HBase的bin目录下的脚本了。先来查看一下HBase的版本信息。

1.hbaseversion

4.下面开始配置HBase。切换目录到/usr/apps/hbase/conf目录下,并使用gedit编辑hbase-env.sh文件。

1.cd/usr/apps/hbase/conf

2.sudo gedithbase-env.sh

追加配置内容到hbase-env.sh中,并保存退出。

1.exportJAVA_HOME=/usr/apps/java

2.exportHBASE_MANAGES_ZK=true

3.exportHBASE_CLASSPATH=/usr/apps/hbase/conf

很明显:

JAVA_HOME为java程序所在位置;

HBASE_MANAGES_ZK表示是否使用HBase自带的zookeeper环境;

HBASE_CLASSPATH指向hbase配置文件的路径。

5.下面使用gedit打开hbase-site.xml文件。

1.sudo gedithbase-site.xml

在两个<configuration>之间添加如下内容,并保存退出。

1.<property>

2.<name>hbase.master</name>

3.<value>localhost</value>

4.</property>

5.<property>

6.<name>hbase.rootdir</name>

7.<value>hdfs://localhost:9000/hbase</value>

8.</property>

9.<property>

10.<name>hbase.cluster.distributed</name>

11.<value>true</value>

12.</property>

13.<property>

14.<name>hbase.zookeeper.quorum</name>

15.<value>localhost</value>

16.</property>

17.<property>

18.<name>hbase.zookeeper.property.dataDir</name>

19.<value>/usr/data/tmp/zookeeper-hbase</value>

20.</property>

配置项说明:

hbase.master:HBase主节点地址。

hbase.rootdir:HBase文件所存储的位置。

hbase.cluster.distributed:HBase是否为分布式模式。

hbase.zookeeper.quorum:这里是配置ZooKeeper的服务器的地方。

hbase.zookeeper.property.dataDir:这里表示HBase在ZooKeeper上存储数据的位置。

注意:这里hbase.zookeeper.property.dataDir目录,需要提前创建。

1.sudomkdir-p/usr/data/tmp/zookeeper-hbase

/data/tmp/zookeeper-hbase目录切换所属用户为bigdata及用户组为bigdata。

1.sudochown-Rbigdata:bigdata/usr/data/tmp/zookeeper-hbase

6.使用gedit编辑/usr/apps/hbase/conf/regionservers文件,此文件存储了HBase集群节点的ip地址,目前只有一台节点,所以只需要填写localhost即可。

1.gedit/usr/apps/hbase/conf/regionservers

修改文件内容为:

1.localhost

7.下面输入jps,查看当前进程,Hadoop进程是否已经启动。

1.jps

若未启动,则切换到/usr/apps/hadoop/sbin目录下,启动Hadoop。

1.cd/usr/apps/hadoop/sbin

2../start-all.sh

Hadoop相关进程启动后,进入HBase的bin目录下,启动HBase服务。

1.cd/usr/apps/hbase/bin/

2../start-hbase.sh

8.输入jps,查看HBase相关进程是否存在。

1.jps

输出结果为:

可以看到HMaster、HRegionServer、HQuorumPeer进程都已启动。

为了进一步测试HBase安装,是否正常,进入HBase Shell接口。

1.hbaseshell

注意:如果我们使用SecureCRT这样的远程访问工具,输错命令时,直接按Backspace键,是不能删除掉前面的文字的。在这里可以使用Ctrl键+Backspace键来删除前面输错的文字。

输入list的命令,查看当前有哪些HTable表。

1.list

创建一张表tb,表中含有一个列簇mycf。

1.create'tb','mycf'

再次输入list,列出HBase中的表。

到此hbase的安装测试都已完毕!

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇hbase故障维护 下一篇Hbase超详细介绍

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目