天天看点

hive_学习_02_hive整合hbase(失败)

 一、前言

本文承接上一篇:

hive_学习_01_hive环境搭建(单机)

 ,主要是记录 hive 整合hbase的流程

二、环境准备

1.环境准备

操作系统 : linux CentOS 6.8

jdk :1.7

cdh版本为: 5.9.3

mysql :  5.1.73 

hadoop-2.6.0-cdh5.9.3 

hbase-1.2.0-cdh5.9.3

hive-1.1.0-cdh5.9.3

2.安装mysql

3.安装hadoop 

参考:

hadoop_学习_02_Hadoop环境搭建(单机)

4.安装 hbase

hbase_学习_01_HBase环境搭建(单机)

5.安装hive

三、服务器基本配置

1.配置主机名

(1)修改 hostname

sudo vim /etc/sysconfig/network      

 将HOSTNAME修改为 rayner (改成你自己的,所有的地方一致即可)

hive_学习_02_hive整合hbase(失败)

(2)映射主机 ip 与主机名

sudo vim /etc/hosts      

加入以下配置:

192.168.1.102  rayner      
hive_学习_02_hive整合hbase(失败)

 2.关闭防火墙

关闭防火墙,这样就可以在本机 window 中访问虚拟机的所有端口了

CentOS 7版本以下输入:

service   iptables stop      

CentOS 7 以上的版本输入:

systemctl   stop   firewalld.service      

3.时间设置

输入:

date      

查看服务器时间是否一致,若不一致则更改

更改时间命令

date -s ‘MMDDhhmmYYYY.ss’      

四、知识准备

1.Hive和HBase的通信意图

Hive与HBase整合的实现是利用两者本身对外的API接口互相通信来完成的,其具体工作交由Hive的lib目录中的hive-hbase-handler-*.jar工具类来实现,通信原理如下图所示。

hive_学习_02_hive整合hbase(失败)

2.Hive整合HBase后的使用场景:

(一)通过Hive把数据加载到HBase中,数据源可以是文件也可以是Hive中的表。

(二)通过整合,让HBase支持JOIN、GROUP等SQL查询语法。

(三)通过整合,不仅可完成HBase的数据实时查询,也可以使用Hive查询HBase中的数据完成复杂的数据分析。

五、hive整合hbase

因为Hive与HBase整合的实现是利用两者本身对外的API接口互相通信来完成的,其具体工作交由Hive的lib目录中的hive-hbase-handler-.jar工具类来实现。

所以只需要将hive的 hive-hbase-handler-.jar 复制到hbase/lib中就可以了。

六、hive 和 hbase 测试

 在进行测试的时候,确保hadoop、hbase、hive环境已经成功搭建好,并且都成功启动了。

七、参考资料

1.

大数据学习系列之五 ----- Hive整合HBase图文详解

2.

Hive HBase Integration

继续阅读