1.  参考说明

参考文档:

https://hbase.apache.org/book.html

2.  安装环境说明

2.1.  环境说明

CentOS7.4+ Hadoop2.7.5的伪分布式环境

主机名

NameNode

SecondaryNameNode

DataNodes

centoshadoop.smartmap.com

192.168.1.80

192.168.1.80

192.168.1.80

Hadoop的安装目录为:/opt/hadoop/hadoop-2.7.5

3.  安装

3.1.  Zookeeper

3.1.1.  Zookeeper下载

http://zookeeper.apache.org/releases.html#download

3.1.2.  Zookeeper解压

将下载的zookeeper-3.4.12.tar.gz解压到/opt/hadoop/zookeeper-3.4.12目录下

3.1.3.  Zookeeper配置

3.1.3.1. 创建目录

[root@centoshadoop conf]# mkdir -p /opt/hadoop/zookeeper-3.4.12/data/db

[root@centoshadoop conf]# mkdir -p
/opt/hadoop/zookeeper-3.4.12/data/log

3.1.3.2. 修改zoo.cfg

[root@centoshadoop zookeeper-3.4.12]# cd
/opt/hadoop/zookeeper-3.4.12/conf/

[root@centoshadoop conf]# cp zoo_sample.cfg zoo.cfg

[root@centoshadoop conf]# vi zoo.cfg

tickTime=2000

initLimit=10

syncLimit=5

clientPort=2181

dataDir=/opt/hadoop/zookeeper-3.4.12/data/db

dataLogDir=/opt/hadoop/zookeeper-3.4.12/data/log

#自动清除日志文件

autopurge.snapRetainCount=20

autopurge.purgeInterval=48

#
Zookeeper Cluster

#
server.1=192.168.1.81:2888:3888

#
server.2=192.168.1.82:2888:3888

#
server.3=192.168.1.83:2888:3888

3.2.  HBase

3.2.1.  HBase下载

https://hbase.apache.org/downloads.html

3.2.2.  HBase解压

将下载的apache-hive-2.3.3-bin.tar.gz解压到/opt/hadoop/hbase-2.0.0目录下

4.  配置

4.1.  修改profile文件

vi
/etc/profile

# export
JAVA_HOME=/opt/java/jdk1.7.0_45

export
JAVA_HOME=/opt/java/jdk1.8.0_171

# export
CLASSPATH=.:$JAVA_HOME/lib

export
HADOOP_HOME=/opt/hadoop/hadoop-2.7.5

export
HADOOP_INSTALL=$HADOOP_HOME

export
HADOOP_MAPRED_HOME=$HADOOP_HOME

export
HADOOP_COMMON_HOME=$HADOOP_HOME

export
HADOOP_HDFS_HOME=$HADOOP_HOME

export
YARN_HOME=$HADOOP_HOME

export
HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native

export
PIG_HOME=/opt/hadoop/pig-0.17.0

export
HIVE_HOME=/opt/hadoop/hive-2.3.3

export
PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

export
PATH=$PATH:$PIG_HOME/bin

export
PATH=$PATH:$HIVE_HOME/bin

export
SQOOP_HOME=/opt/hadoop/sqoop-1.99.7

export
PATH=$PATH:$SQOOP_HOME/bin

export
CLASSPATH=$CLASSPATH:$SQOOP_HOME/server/lib:$SQOOP_HOME/shell/lib:$SQOOP_HOME/tools/lib

export
SQOOP_SERVER_EXTRA_LIB=/opt/hadoop/sqoop-1.99.7/jdbcDriver/

export
HBASE_HOME=/opt/hadoop/hbase-2.0.0

export
PATH=$PATH:$HBASE_HOME/bin

export
CLASSPATH=.:$JAVA_HOME/lib:$HIVE_HOME/lib

export
LD_LIBRARY_PATH=$JAVA_HOME/jre/lib/amd64/server:/usr/local/lib:$HADOOP_HOME/lib/native

export
JAVA_LIBRARY_PATH=$LD_LIBRARY_PATH:$JAVA_LIBRARY_PATH

export
HADOOP_USER_NAME=hadoop

4.2.  将JDK升级为1.8版本

将JDK切换成1.8的版本,并修改所有与JAVA_HOME相关的变量

4.3.  修改HBase的配置文件

4.3.1.  创建目录

[root@centoshadoop hbase-2.0.0]# mkdir -p
/opt/hadoop/hbase-2.0.0/data/tmp

[root@centoshadoop hbase-2.0.0]# mkdir -p
/opt/hadoop/hbase-2.0.0/data/tmp/zookeeper

4.3.2.  修改hbase-env.sh

[root@centoshadoop conf]# vi
/opt/hadoop/hbase-2.0.0/conf/hbase-env.sh

export JAVA_HOME=/opt/java/jdk1.8.0_171

export HBASE_MANAGES_ZK=false

4.3.3.  修改hbase-site.xml

[root@centoshadoop conf]# vi
/opt/hadoop/hbase-2.0.0/conf/hbase-site.xml

<property>

<name>hbase.rootdir</name>

<value>hdfs://192.168.1.80:9000/hbase</value>

</property>

<property>

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

<value>true</value>

</property>

<property>

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

<value>192.168.1.80</value>

</property>

<property>

<name>hbase.temp.dir</name>

<value>/opt/hadoop/hbase-2.0.0/data/tmp</value>

</property>

<property>

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

<value>/opt/hadoop/hbase-2.0.0/data/tmp/zookeeper</value>

</property>

<property>

<name>hbase.zookeeper.property.clientPort</name>

<value>2181</value>

</property>

<property>

<name>hbase.master.info.port</name>

<value>60010</value>

</property>

4.3.4.  修改regionservers

[root@centoshadoop conf]# vi
/opt/hadoop/hbase-2.0.0/conf/regionservers

192.168.1.80

5.  启动Hadoop

5.1.  启动YARN与HDFS

cd
/opt/hadoop/hadoop-2.7.5/sbin

start-all.sh

5.2.  启动historyserver

cd
/opt/hadoop/hadoop-2.7.5/sbin

mr-jobhistory-daemon.sh start historyserver

6.  启动Zookeeper

[root@centoshadoop bin]# cd /opt/hadoop/zookeeper-3.4.12/bin/

[root@centoshadoop bin]# ./zkServer.sh start

ZooKeeper JMX enabled by default

Using
config: /opt/hadoop/zookeeper-3.4.12/bin/../conf/zoo.cfg

Starting
zookeeper ... STARTED

[root@centoshadoop bin]#

7.  启动Hbase

[root@centoshadoop bin]# cd /opt/hadoop/hbase-2.0.0/bin/

[root@centoshadoop bin]# ./start-hbase.sh

[root@centoshadoop bin]# jps

41984
DataNode

42192
SecondaryNameNode

45920
QuorumPeerMain

46643
Jps

42484
NodeManager

46294
HRegionServer

41850
NameNode

46170
HMaster

29245
JobHistoryServer

42365
ResourceManager

[root@centoshadoop bin]#

8.  应用HBase工具

8.1.  测试

8.1.1.  用浏览器访问Hbase状态信息

http://192.168.1.80:16030/

8.2.  HBase的交互式Shell

名称

命令表达式

创建表

create '表名称',
'列名称1','列名称2','列名称N'

添加记录

put '表名称',
'行名称', '列名称:', '值'

查看记录

get '表名称',
'行名称'

查看表中的记录总数

count  '表名称'

删除记录

delete  '表名'
,'行名称' ,
'列名称'

删除一张表

先要屏蔽该表,才能对该表进行删除,

第一步disable '表名称'

第二步  drop '表名称'

查看所有记录

scan "表名称"

查看某个表某个列中所有数据

scan "表名称" ,
['列名称:']

更新记录

就是重写一遍进行覆盖

8.2.1.  启动运行HBase的交互式Shell环境

[root@centoshadoop bin]# cd /opt/hadoop/hbase-2.0.0/bin/

[root@centoshadoop bin]# ./hbase shell

8.2.2.  创建表

hbase(main):004:0> create 'test', 'data'

Created
table test

Took
1.4466 seconds

=>
Hbase::Table - test

hbase(main):005:0>

test:
表名

data:
列族(column family)

8.2.3.  显示表

hbase(main):005:0> list

TABLE

test

1
row(s)

Took
0.0250 seconds

=>
["test"]

8.2.4.  加入数据

hbase(main):006:0> put 'test', 'row1', 'data:1',
'value1'

Took
0.1997 seconds

hbase(main):007:0> put 'test', 'row2', 'data:2',
'value2'

Took
0.0140 seconds

hbase(main):008:0> put 'test', 'row3', 'data:3',
'value3'

Took
0.0061 seconds

hbase(main):009:0>

test:表名

row1:行键(row key)

data:1:列(column)

8.2.5.  查询数据

hbase(main):009:0> scan 'test'

ROW                           COLUMN+CELL

row1                         column=data:1, timestamp=1527136702544, value=value1

row2                         column=data:2, timestamp=1527136720577, value=value2

row3                         column=data:3,
timestamp=1527136732695, value=value3

3
row(s)

Took
0.0360 seconds

8.2.6.  删除表

HBase安装与应用的更多相关文章

  1. HBase安装及简单使用

    通过之前的hadoop0.20.2的安装并调试成功,接下来我们继续安装hbase0.90.5.在安装hbase0.90.5之前,因为hbase0.90.5只支持jdk1.6,所以,我把之前的jdk1. ...

  2. Hbase安装配置(靠谱亲测)

    Hbase是Hadoop生态系统中的NoSql列式数据库.通过Hbase,可以进行数据读写,比较适合Top n场景.Hbase搭建的系统,瓶颈在于硬盘的传输速度.RDBMS一般的瓶颈在于寻道速度. 实 ...

  3. hbase安装

    HBase的安装 本篇介绍两种HBase的安装方式:本地安装方式和伪分布式安装方式. 安装的前提条件是已经成功安装了hadoop,而且hadoop的版本要和hbase的版本相匹配. 我将要安装的hba ...

  4. Hbase总结(一)-hbase命令,hbase安装,与Hive的区别,与传统数据库的区别,Hbase数据模型

    Hbase总结(一)-hbase命令 下面我们看看HBase Shell的一些基本操作命令,我列出了几个常用的HBase Shell命令,如下: 名称 命令表达式 创建表 create '表名称', ...

  5. HBase安装inAction

    在安装Hbase之前,需要有hadoop的运行环境,关于hadoop的安装过程,请查看我之前的blog:hadoop安装笔记:或者另一个博主的超详细文章http://weixiaolu.iteye.c ...

  6. hbase安装配置(整合到hadoop)

    hbase安装配置(整合到hadoop) 如果想详细了解hbase的安装:http://abloz.com/hbase/book.html 和官网http://hbase.apache.org/ 1. ...

  7. hbase总结(二)-hbase安装

    本篇介绍两种HBase的安装方式:本地安装方式和伪分布式安装方式. 安装的前提条件是已经安装成功了hadoop,并且hadoop的版本号要和hbase的版本号相匹配. 我将要安装的hbase是hbas ...

  8. docker 安装 hbase安装 java连接hbase (mac环境)

    docker 安装 https://hub.docker.com/editions/community/docker-ce-desktop-mac 下载地址 下载完之后,安装app一样安装就好 安装完 ...

  9. 大数据: 完全分布式Hadoop集群-HBase安装

            HBase 是一个开源的非关系(NoSQL)的可伸缩性分布式数据库.它是面向列的,并适合于存储超大型松散数据.HBase适合于实时,随机对Big数据进行读写操作的业务环境.   本文基 ...

  10. 指导手册06:HBase安装部署

    指导手册06:HBase安装部署 配置环境 1.参考文件: https://www.cnblogs.com/lzxlfly/p/7221890.html https://www.cnblogs.com ...

随机推荐

  1. windows store app 如何计算字符所占的宽度

    最近在做一个PDF电子文档相关的项目,我们的app是运行在Windows 8 / WinRT 下的.由于使用的第三方库的一些技术限制,text area竟然不支持多行文本自动换行.于是我们就需要自己实 ...

  2. 剑指offer十二之数值的整数次方

    一.题目 给定一个double类型的浮点数base和int类型的整数exponent.求base的exponent次方. 二.思路 1.传统方法计算,时间复杂度O(n) 2.递归方式计算,时间复杂度O ...

  3. MapReduce中的partitioner

    1.日志源文件: 1363157985066 13726230503 00-FD-07-A4-72-B8:CMCC 120.196.100.82 i02.c.aliimg.com 24 27 2481 ...

  4. GitLab 修改主机名,更换 IP 配置,配置 SMTP

    # find / -name gitlab.yml /opt/gitlab/embedded/service/gitlab-rails/config/gitlab.yml /var/opt/gitla ...

  5. StreamSets学习系列之StreamSets的Core Tarball方式安装(图文详解)

    不多说,直接上干货! 前期博客 StreamSets学习系列之StreamSets支持多种安装方式[Core Tarball.Cloudera Parcel .Full Tarball .Full R ...

  6. pyenv docter检测出configure: error: OpenSSL is not installed.解决方案

    1 在安装相应版本的python时,前声明 CFLAGS=-I/usr/include/openssl \ LDFLAGS=-L/usr/lib64 \ pyenv install -v 3.5.1

  7. 从nsq中学习如何优雅的退出go 网络程序

    退出运行中的程序,可以粗暴的kill -9 $PID,但这样会破坏业务的完整性,有可能一个正在在执行的逻辑半途而费,从而产生不正常的垃圾数据. 本文总结在go语言中,如何能优雅的退出网络应用,涉及的知 ...

  8. Java RMI 框架(远程方法调用)

    转自:http://haolloyin.blog.51cto.com/1177454/332426 RMI(即Remote Method Invoke 远程方法调用).在Java中,只要一个类exte ...

  9. js实现时间日期的格式化

    前几天参加cvte的笔试,碰到了这样一道题目: //请写一个时间日期格式化的函数,具体要求如下: function format(date,"yyyy-mm-dd HH-mm-ss" ...

  10. ASP.NET开发,从二层至三层,至面向对象 (3)

    继续上一篇<ASP.NET开发,从二层至三层,至面向对象 (2)>http://www.cnblogs.com/insus/p/3825805.html .我们学会了怎样创建对象,把Biz ...