设为首页 加入收藏

TOP

Hive如何添加第三方JAR
2019-04-13 01:04:00 】 浏览:59
Tags:Hive 如何 添加 第三方 JAR

以加入elsaticsearch-Hadoop-2.1.2.jar为例,讲述在Hive中加入第三方jar的几种方式。

1,在hive shell中加入

[java]view plaincopy

  1. [hadoop@hadoopcluster78bin]$./hive
  2. Logginginitializedusingconfigurationinfile:/home/hadoop/apache/hive-0.13.1/conf/hive-log4j.properties
  3. hive>addjar/home/hadoop/elasticsearch-hadoop-hive-2.1.2.jar;//elasticsearch-hadoop-hive-2.1.2.jar放在本地文件系统的/home/hadoop目录。
  4. Added/home/hadoop/elasticsearch-hadoop-hive-2.1.2.jartoclasspath
  5. Addedresource:/home/hadoop/elasticsearch-hadoop-hive-2.1.2.jar

连接方式 是否有效
Hive Shell 不需要重启Hive服务就有效
Hive Server 无效

2,Jar放入${HIVE_HOME}/auxlib目录

在${HIVE_HOME}中创建文件夹auxlib,然后将自定义jar文件放入该文件夹中。
此方法添加不需要重启Hive。而且比较便捷。

连接方式 是否有效
Hive Shell 不需要重启Hive服务就有效
Hive Server 重启Hive服务才生效

3,HIVE.AUX.JARS.PATH和hive.aux.jars.path

hive-env.sh中的HIVE.AUX.JARS.PATH和hive-site.xml的hive.aux.jars.path配置对服务器无效,仅对当前hiveshell有效,不同的hiveshell相互不影响,每个hiveshell都需要配置,可以配置成文件夹形式。

HIVE.AUX.JARS.PATH和hive.aux.jars.path仅支持本地文件。可配置成文件,也可配置为文件夹。

在${HIVE_HOME}/conf/hive-env.sh下配置:
[java]view plaincopy

  1. exportHIVE_AUX_JARS_PATH=/home/hadoop/apache/hive-0.13.1/lib/mysql-connector-java-5.1.7-bin.jar#本地文件路径,不支持HDFS路径


类似的,可以在${HIVE_HOME}/conf/hive-site.xml下配置:
[java]view plaincopy

  1. <property>
  2. <name>hive.aux.jars.path</name>
  3. <value>/home/hadoop/elasticsearch-hadoop-hive-2.1.2.jar</value>
  4. </property>

连接方式 是否有效
Hive Shell 重启Hive服务才生效且不同的Hive Shell互不影响
Hive Server 无效


注:hive-env.sh中配置的HIVE_AUX_JARS_PATH和hive-site.xml配置hive.aux.jars.path参数会有冲突,在使用的时候要特别注意。

4,直接将Jar加入${HIVE_HOME}/lib目录

连接方式 是否有效
Hive Shell 重启Hive服务才生效
Hive Server 重启Hive服务才生效


总结:经测试只有第2种方式才能在Hive Server中起效。

ref:https://blog.csdn.net/sh0308/article/details/70237755

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇Hive踩坑之The specified datasto.. 下一篇执行Hive语句报错:FAILED: Error..

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目