HBase安装与应用
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状态信息

8.2. HBase的交互式Shell
|
名称 |
命令表达式 |
|
创建表 |
create '表名称', |
|
添加记录 |
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安装与应用的更多相关文章
- HBase安装及简单使用
通过之前的hadoop0.20.2的安装并调试成功,接下来我们继续安装hbase0.90.5.在安装hbase0.90.5之前,因为hbase0.90.5只支持jdk1.6,所以,我把之前的jdk1. ...
- Hbase安装配置(靠谱亲测)
Hbase是Hadoop生态系统中的NoSql列式数据库.通过Hbase,可以进行数据读写,比较适合Top n场景.Hbase搭建的系统,瓶颈在于硬盘的传输速度.RDBMS一般的瓶颈在于寻道速度. 实 ...
- hbase安装
HBase的安装 本篇介绍两种HBase的安装方式:本地安装方式和伪分布式安装方式. 安装的前提条件是已经成功安装了hadoop,而且hadoop的版本要和hbase的版本相匹配. 我将要安装的hba ...
- Hbase总结(一)-hbase命令,hbase安装,与Hive的区别,与传统数据库的区别,Hbase数据模型
Hbase总结(一)-hbase命令 下面我们看看HBase Shell的一些基本操作命令,我列出了几个常用的HBase Shell命令,如下: 名称 命令表达式 创建表 create '表名称', ...
- HBase安装inAction
在安装Hbase之前,需要有hadoop的运行环境,关于hadoop的安装过程,请查看我之前的blog:hadoop安装笔记:或者另一个博主的超详细文章http://weixiaolu.iteye.c ...
- hbase安装配置(整合到hadoop)
hbase安装配置(整合到hadoop) 如果想详细了解hbase的安装:http://abloz.com/hbase/book.html 和官网http://hbase.apache.org/ 1. ...
- hbase总结(二)-hbase安装
本篇介绍两种HBase的安装方式:本地安装方式和伪分布式安装方式. 安装的前提条件是已经安装成功了hadoop,并且hadoop的版本号要和hbase的版本号相匹配. 我将要安装的hbase是hbas ...
- docker 安装 hbase安装 java连接hbase (mac环境)
docker 安装 https://hub.docker.com/editions/community/docker-ce-desktop-mac 下载地址 下载完之后,安装app一样安装就好 安装完 ...
- 大数据: 完全分布式Hadoop集群-HBase安装
HBase 是一个开源的非关系(NoSQL)的可伸缩性分布式数据库.它是面向列的,并适合于存储超大型松散数据.HBase适合于实时,随机对Big数据进行读写操作的业务环境. 本文基 ...
- 指导手册06:HBase安装部署
指导手册06:HBase安装部署 配置环境 1.参考文件: https://www.cnblogs.com/lzxlfly/p/7221890.html https://www.cnblogs.com ...
随机推荐
- 再续session和cookie (网络整理)
摘要:虽然session机制在web应用程序中被采用已经很长时间了,但是仍然有很多人不清楚session机制的本质,以至不能正确的应用这一技术.本文将详细讨论session的工作机制并且对在Java ...
- (转)CentOS7安装Nginx1.14.2
原文:https://blog.csdn.net/zhyfyz/article/details/84957381 https://blog.csdn.net/q85795362/article/det ...
- (转)关于python3中staticmethod(静态方法)classmethod(类方法)实例方法的联系和区别
原文:http://dmcoders.com/2017/08/30/pythonclass/ https://zhuanlan.zhihu.com/p/28010894------正确理解Python ...
- pigz 压缩
压缩工具--pigz 压缩: tar cvf - 目录名 | pigz -9 -p 24 > file.tgz pigz:用法-9是压缩比率比较大,-p是指定cpu的核数. 解压: pigz - ...
- Java 调用系统命令
ProcessBuilder import java.io.File; import java.io.IOException; import java.io.InputStream; import j ...
- 探讨e.target与e.currentTarget
target与currentTarget两者既有区别,也有联系,那么我们就来探讨下他们的区别吧,一个通俗易懂的例子解释一下两者的区别: <!DOCTYPE html> <html&g ...
- 【IT笔试面试题整理】不用加减乘除做加法
[试题描述]写一个函数,求两个整数的和,要求在函数体内不得使用加减乘除四则运算符合. 基本思路是这样的: int A, B;A&B //看哪几位有进位A^B //不带进位加 考虑二进制加法的过 ...
- Netty 源码阅读的思考------耗时业务到底该如何处理
目录大纲: 前言 处理耗时业务的第一种方式-------handler 种加入线程池 处理耗时业务的第二种方式-------Context 中添加线程池 总结:两种方式的对比和思考 前言 熟悉 Net ...
- 并发编程——ConcurrentHashMap#transfer() 扩容逐行分析
前言 ConcurrentHashMap 是并发中的重中之重,也是最常用的数据结果,之前的文章中,我们介绍了 putVal 方法.并发编程之 ConcurrentHashMap(JDK 1.8) pu ...
- ASP.NET MVC实现剪切图片
开发需要,我们需要对某一张图片进行剪切.就是说,获取图片某一区域.下面Insus.NET教大家轻便容易实现它. 首先写好一个处理函数,它建在MVC应用程序结构Utilities目录下: 准备好一张图片 ...