在上一篇 大数据学习系列之四 ----- Hadoop+Hive环境搭建图文详解(单机) 和之前的大数据学习系列之二 ----- HBase环境搭建(单机) 中成功搭建了Hive和HBase的环境,并进行了相应的测试。本文主要讲的是如何将Hive和HBase进行整合。
Hive和HBase的通信意图Hive与HBase整合的实现是利用两者本身对外的API接口互相通信来完成的,其具体工作交由Hive的lib目录中的hive-hbase-handler-*.jar工具类来实现,通信原理如下图所示。
(一)通过Hive把数据加载到HBase中,数据源可以是文件也可以是Hive中的表。
(二)通过整合,让HBase支持JOIN、GROUP等SQL查询语法。
(三)通过整合,不仅可完成HBase的数据实时查询,也可以使用Hive查询HBase中的数据完成复杂的数据分析。
本地虚拟机
操作系统:linux CentOS 7
Cpu:2核
内存:2G
硬盘:40G
JDK:1.8 (jdk-8u144-linux-x64.tar.gz)
Hadoop:2.8.2 (hadoop-2.8.2.tar.gz)
Hive: 2.1 (apache-hive-2.1.1-bin.tar.gz)
HBase:1.6.2 (hbase-1.2.6-bin.tar.gz)
官网地址
JDK:
Hadopp:
Hive
HBase:
百度云盘
链接:https://pan.baidu.com/s/1jIemIDC 密码:uycu
在配置Hadoop+Hive之前,应该先做一下配置。
做这些配置为了方便,使用root权限。
首先更改主机名,目的是为了方便管理。
输入:
查看本机的名称
然后更改主机名为master
输入:
注:主机名称更改之后,要重启(reboot)才会生效。
2,做IP和主机名的映射修改hosts文件,做关系映射
输入
添加
主机的ip 和 主机名称
关闭防火墙,方便访问。
CentOS 7版本以下输入:
关闭防火墙
CentOS 7 以上的版本输入:
systemctl stop firewalld.service 4,时间设置查看当前时间
输入:
查看服务器时间是否一致,若不一致则更改
更改时间命令
/etc/profile 的整体配置
#Java Config export JAVA_HOME=http://www.likecs.com/opt/java/jdk1.8 export JRE_HOME=http://www.likecs.com/opt/java/jdk1.8/jre export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib # Scala Config export SCALA_HOME=http://www.likecs.com/opt/scala/scala-2.12.2 # Spark Config export SPARK_HOME=http://www.likecs.com/opt/spark/spark1.6-hadoop2.4-hive # Zookeeper Config export ZK_HOME=http://www.likecs.com/opt/zookeeper/zookeeper3.4 # HBase Config export HBASE_HOME=http://www.likecs.com/opt/hbase/hbase1.2 # Hadoop Config export HADOOP_HOME=http://www.likecs.com/opt/hadoop/hadoop2.8 export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib" # Hive Config export HIVE_HOME=http://www.likecs.com/opt/hive/hive2.1 export HIVE_CONF_DIR=${HIVE_HOME}/conf export PATH=.:${JAVA_HOME}/bin:${SCALA_HOME}/bin:${SPARK_HOME}/bin:${HADOOP_HOME}/bin:${HADOOP_HOME}/sbin:${ZK_HOME}/bin:${HBASE_HOME}/bin:${HIVE_HOME}/bin:$PATH注:具体的配置以自己的为准,没有的不用配置。
三、Hadoop的环境配置Hadoop的具体配置在大数据学习系列之一 ----- Hadoop环境搭建(单机) 中介绍得很详细了。所以本文就大体介绍一下。
注:具体配置以自己的为准。
编辑 /etc/profile 文件 :
vim /etc/profile配置文件:
export HADOOP_HOME=http://www.likecs.com/opt/hadoop/hadoop2.8 export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib" export PATH=.:${JAVA_HOME}/bin:${HADOOP_HOME}/bin:$PATH 2,配置文件更改先切换到 /home/hadoop/hadoop2.8/etc/hadoop/ 目录下
3.2.1 修改 core-site.xml输入:
vim core-site.xml在
<configuration> <property> <name>hadoop.tmp.dir</name> <value>/root/hadoop/tmp</value> <description>Abase for other temporary directories.</description> </property> <property> <name>fs.default.name</name> <value>hdfs://master:9000</value> </property> </configuration> 3.2.2修改 hadoop-env.sh输入:
vim hadoop-env.sh将${JAVA_HOME} 修改为自己的JDK路径
export JAVA_HOME=${JAVA_HOME}修改为:
export JAVA_HOME=http://www.likecs.com/home/java/jdk1.8 3.2.3修改 hdfs-site.xml输入:
vim hdfs-site.xml