Hadoop 集群搭建(七):Hive

Hive:不要把我认成Hbase


mounzer-awad-348688-unsplash

Hive 安装配置

安装Hive

仅在Master 仅在Client
  • cd /mnt/hgfs/Hadoop
  • cp apache-hive-2.3.4-bin.tar.gz /usr/local/src/
  • cd /usr/local/src/
  • tar zxvf apache-hive-2.3.4-bin.tar.gz
  • rm -rf apache-hive-2.3.4-bin.tar.gz

配置Hive环境变量:

  • vim ~/.bashrc
1
2
3
4
# 添加如下信息
# SET Hive PATH
export HIVE_HOME=/usr/local/src/apache-hive-2.3.4-bin
export PATH=$PATH:$HIVE_HOME/bin
  • source ~/.bashrc

配置mysql驱动包

仅在Master
  • cd /mnt/hgfs/Hadoop
  • cp mysql-connector-java-5.1.47.tar.gz /usr/local/src/
  • cd /usr/local/src/
  • tar zxvf mysql-connector-java-5.1.47.tar.gz
  • rm -rf mysql-connector-java-5.1.47.tar.gz
  • cp mysql-connector-java-5.1.47-bin.jar /usr/local/src/apache-hive-2.3.4-bin/lib/

更换jline包(版本不一致):

  • cp apache-hive-2.3.4-bin/lib/jline-2.12.jar /usr/local/src/hadoop-2.8.5/share/hadoop/yarn/lib/

配置hive

仅在Master 仅在Client
  • cd apache-hive-2.3.4-bin

创建临时目录/日志目录/数仓目录:

  • mkdir -p data/hive/log
  • mkdir -p data/hive/tmp
  • mkdir -p data/hive/warehouse

配置文件:

  • cd conf
  • cp hive-env.sh.template hive-env.sh
  • vim hive-env.sh
1
2
3
4
5
6
# 添加如下信息
export JAVA_HOME=/usr/local/src/jdk1.8.0_212
export HADOOP_HOME=/usr/local/src/hadoop-2.8.5
export HIVE_HOME=/usr/local/src/apache-hive-2.3.4-bin
export HIVE_CONF_DIR=/usr/local/src/apache-hive-2.3.4-bin/conf
export HIVE_AUX_JARS=/usr/local/src/apache-hive-2.3.4-bin/lib
  • cp hive-default.xml.template hive-site.xml
  • vim hive-site.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
# 添加如下信息

<configuration>
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://master:3306/hive?createDatabaseIfNotExist=true&amp;useSSL=false</value>
</property>
<property>
<name>javax.jdo.option.ConnectionDriverName</name>
<value>com.mysql.jdbc.Driver</value>
</property>
<property>
<name>javax.jdo.option.ConnectionUserName</name>
<value>alessa0</value>
</property>
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>{密码}</value>
</property>
<property>
<name>hive.metastore.warehouse.dir</name>
<value>/usr/local/src/apache-hive-2.3.4-bin/data/hive/warehouse</value>
</property>
<property>
<name>hive.exec.scratchdir</name>
<value>/usr/local/src/apache-hive-2.3.4-bin/data/hive/tmp</value>
</property>
<property>
<name>hive.querylog.location</name>
<value>/usr/local/src/apache-hive-2.3.4-bin/data/hive/log</value>
</property>
</configuration>

把{system:java.io.tmpdir} 改成 /usr/local/src/apache-hive-2.3.4-bin/data/hive/tmp:

1
:%s/${system:java.io.tmpdir}/\/usr\/local\/src\/apache-hive-2.3.4-bin\/data\/hive\/tmp/g

把 {system:user.name} 改成 {user.name} :

1
:%s/${system:user.name}/alessa0/g

初始化hive(MySQL版)

  • schematool -dbType mysql -initSchema

配置使用hiveserver2

仅在Master
  • vim hive-site.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
# 添加如下信息

<property>
<name>hive.server2.thrift.port</name>
<value>10000</value>
</property>
<property>
<name>hive.server2.thrift.bind.host</name>
<value>master</value>
</property>
<property>
<name>hive.server2.enable.doAs</name>
<value>false</value>
</property>
<property>
<name>hive.metastore.uris</name>
<value>thrift://master:9083</value>
</property>
<property>
<name>hive.support.concurrency</name>
<value>true</value>
</property>
<property>
<name>hive.zookeeper.quorum</name>
<value>master:2181,slave1:2181,slave2:2181</value>
</property>
<property>
<name>hive.server2.webui.host</name>
<value>master</value>
</property>
<property>
<name>hive.server2.webui.port</name>
<value>10002</value>
</property>

服务端启动

仅在Master

启动 metastore 服务

  • nohup hive —service metastore >> /usr/local/src/apache-hive-2.3.4-bin/logs/hivelog.log 2>&1 &

启动 hiveserver2 服务

  • nohup hiveserver2 1>/usr/local/src/apache-hive-2.3.4-bin/logs/hiveserver.log 2>/usr/local/src/apache-hive-2.3.4-bin/logs/hiveserver.err &

测试

客户端连接

仅在Client

启动beeline :

  • beeline -u “jdbc:hive2://master:10000” alessa0 1008

退出beeline :

  • !q



Alessa0 wechat
(> <)  中国儿童少年基金会  &  Alessa0.cn  谢谢您的帮助!
--------- 本文结束 感谢您的阅读 ---------

本文标题:Hadoop 集群搭建(七):Hive

文章作者:Alessa0

发布时间:2019年04月25日 - 11:04

最后更新:2019年08月05日 - 15:08

原始链接:https://alessa0.cn/posts/9cf82033/

版权声明: CC BY-NC-ND 4.0 转载请保留原文链接及作者。

0%