Hive整合HBase图像和文字详解,大数目学习类别之

2019-10-01 14:36 来源:未知

引言

在上一篇 大数据学习系列之四 ----- Hadoop+Hive环境搭建图文详解(单机) 和之前的大数据学习系列之二 ----- HBase环境搭建(单机) 中成功搭建了Hive和HBase的环境,并进行了相应的测试。本文主要讲的是如何将Hive和HBase进行整合。

引言

在大数据学习系列之一 ----- Hadoop环境搭建(单机) 成功的搭建了Hadoop的环境,在大数据学习系列之二 ----- HBase环境搭建(单机)成功搭建了HBase的环境以及相关使用介绍。本文主要讲解如何搭建Hadoop+Hive的环境。

Hive和HBase的通信意图

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

一、环境准备

Hive整合HBase后的使用场景:

(一)通过Hive把数据加载到HBase中,数据源可以是文件也可以是Hive中的表。
(二)通过整合,让HBase支持JOIN、GROUP等SQL查询语法。
(三)通过整合,不仅可完成HBase的数据实时查询,也可以使用Hive查询HBase中的数据完成复杂的数据分析。

1,服务器选择

本地虚拟机
操作系统:linux CentOS 7
Cpu:2核
内存:2G
硬盘:40G

说明:因为使用阿里云服务器每次都要重新配置,而且还要考虑网络传输问题,于是自己在本地便搭建了一个虚拟机,方便文件的传输以及相关配置,缺点是本来卡的电脑就变得更卡了。具体教程和使用在上一遍博文中。
地址: 。

一、环境选择

2,配置选择

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)

1,服务器选择

本地虚拟机
操作系统:linux CentOS 7
Cpu:2核
内存:2G
硬盘:40G

3,下载地址

JDK:

Hadopp:

Hive

百度云盘:
链接: 密码:x51i

2,配置选择

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)

二、服务器的相关配置

在配置Hadoop+Hive之前,应该先做一下配置。
做这些配置为了方便,使用root权限。

3,下载地址

官网地址
JDK:

Hadopp:

Hive

HBase:

百度云盘
链接: 密码:uycu

1,更改主机名

首先更改主机名,目的是为了方便管理。
输入:

hostname 

查看本机的名称
然后更改主机名为master
输入:

hostnamectl set-hostname master

注:主机名称更改之后,要重启(reboot)才会生效。

二、服务器的相关配置

在配置Hadoop+Hive+HBase之前,应该先做一下配置。
做这些配置为了方便,使用root权限。

2,做IP和主机名的映射

修改hosts文件,做关系映射
输入

vim /etc/hosts

添加
主机的ip 和 主机名称

192.168.238.128 master

1,更改主机名

首先更改主机名,目的是为了方便管理。
输入:

hostname 

查看本机的名称
然后更改主机名为master
输入:

hostnamectl set-hostname master

注:主机名称更改之后,要重启(reboot)才会生效。

3,关闭防火墙

关闭防火墙,方便访问。
CentOS 7版本以下输入:
关闭防火墙

service   iptables stop

CentOS 7 以上的版本输入:

systemctl stop firewalld.service

2,做IP和主机名的映射

修改hosts文件,做关系映射
输入

vim /etc/hosts

添加
主机的ip 和 主机名称

192.168.238.128 master

3,时间设置

查看当前时间
输入:

date

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

date -s ‘MMDDhhmmYYYY.ss’

3,关闭防火墙

关闭防火墙,方便访问。
CentOS 7版本以下输入:
关闭防火墙

service   iptables stop

CentOS 7 以上的版本输入:

systemctl stop firewalld.service

三、Hadoop安装和配置

Hadoop的具体配置在大数据学习系列之一 ----- Hadoop环境搭建(单机) 中介绍得很详细了。所以本文就大体介绍一下。
注:具体配置以自己的为准。

4,时间设置

查看当前时间
输入:

date

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

date -s ‘MMDDhhmmYYYY.ss’

1,环境变量设置

编辑 /etc/profile 文件 :

vim /etc/profile

配置文件:

export HADOOP_HOME=/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

5,整体的环境配置

/etc/profile 的整体配置

#Java Config
export JAVA_HOME=/opt/java/jdk1.8
export JRE_HOME=/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=/opt/scala/scala-2.12.2


# Spark Config
export  SPARK_HOME=/opt/spark/spark1.6-hadoop2.4-hive

# Zookeeper Config
export ZK_HOME=/opt/zookeeper/zookeeper3.4

# HBase Config
export HBASE_HOME=/opt/hbase/hbase1.2

# Hadoop Config 
export HADOOP_HOME=/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=/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

图片 2

注:具体的配置以自己的为准,没有的不用配置。

2,配置文件更改

先切换到 /home/hadoop/hadoop2.8/etc/hadoop/ 目录下

三、Hadoop的环境配置

Hadoop的具体配置在大数据学习系列之一 ----- 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>

1,环境变量设置

编辑 /etc/profile 文件 :

vim /etc/profile

配置文件:

export HADOOP_HOME=/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

3.2.2修改 hadoop-env.sh

输入:

vim hadoop-env.sh

将${JAVA_HOME} 修改为自己的JDK路径

export   JAVA_HOME=${JAVA_HOME}

修改为:

export   JAVA_HOME=/home/java/jdk1.8

2,配置文件更改

先切换到 /home/hadoop/hadoop2.8/etc/hadoop/ 目录下

3.2.3修改 hdfs-site.xml

输入:

vim hdfs-site.xml

在添加:

<property>
   <name>dfs.name.dir</name>
   <value>/root/hadoop/dfs/name</value>
   <description>Path on the local filesystem where theNameNode stores the namespace and transactions logs persistently.</description>
</property>
<property>
   <name>dfs.data.dir</name>
   <value>/root/hadoop/dfs/data</value>
   <description>Comma separated list of paths on the localfilesystem of a DataNode where it should store its blocks.</description>
</property>
<property>
   <name>dfs.replication</name>
   <value>2</value>
</property>
<property>
      <name>dfs.permissions</name>
      <value>false</value>
      <description>need not permissions</description>
</property>

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.4 修改mapred-site.xml

如果没有 mapred-site.xml 该文件,就复制mapred-site.xml.template文件并重命名为mapred-site.xml。
输入:

vim mapred-site.xml

修改这个新建的mapred-site.xml文件,在节点内加入配置:

<property>
    <name>mapred.job.tracker</name>
    <value>master:9001</value>
</property>
<property>
      <name>mapred.local.dir</name>
       <value>/root/hadoop/var</value>
</property>
<property>
       <name>mapreduce.framework.name</name>
       <value>yarn</value>
</property>

3.2.2修改 hadoop-env.sh

输入:

vim hadoop-env.sh

将${JAVA_HOME} 修改为自己的JDK路径

export   JAVA_HOME=${JAVA_HOME}

修改为:

export   JAVA_HOME=/home/java/jdk1.8

3,Hadoop启动

启动之前需要先格式化
切换到/home/hadoop/hadoop2.8/bin目录下
输入:

./hadoop  namenode  -format

格式化成功后,再切换到/home/hadoop/hadoop2.8/sbin目录下
启动hdfs和yarn
输入:

start-dfs.sh
start-yarn.sh

启动成功后,输入jsp查看是否启动成功
在浏览器输入 ip+8088 和ip +50070 界面查看是否能访问
能正确访问则启动成功

TAG标签:
版权声明:本文由金沙澳门官网4166发布于中国史,转载请注明出处:Hive整合HBase图像和文字详解,大数目学习类别之