Hive添加文件/ jar说不存在

时间:2015-08-09 09:49:29

标签: java hadoop hive hiveql

所以我想尝试使用Hive MAP和REDUCE自定义mapper reducer查询。

我已经将自定义映射器和reducer编写并导出到jar文件,并尝试从Hive CLI添加它。我得到了"不存在"错误无论我在哪里复制jar。我尝试了以下内容。

我将文件复制到/ usr / local / hive / lib /,/ usr / local / hive / conf /和/ tmp /然后在hdfs中我也将其复制到/,/ user / hive /和/ user /蜂房/仓库/

我尝试提供完整路径然后我得到URL语法异常

hive> add jar 'hdfs://srimanthpc:9000/SpaceTravel.jar';
Illegal character in scheme name at index 0: 'hdfs://srimanthpc:9000/SpaceTravel.jar'
Query returned non-zero code: 1, cause: java.net.URISyntaxException: Illegal character in scheme name at index 0: 'hdfs://srimanthpc:9000/SpaceTravel.jar'

hive> add jar 'file:///home/anil/Desktop/SpaceTravel.jar';
Illegal character in scheme name at index 0: 'file:///home/anil/Desktop/SpaceTravel.jar'
Query returned non-zero code: 1, cause: java.net.URISyntaxException: Illegal character in scheme name at index 0: 'file:///home/anil/Desktop/SpaceTravel.jar'

如果我给出没有任何架构的路径,它说它不存在。我尝试了添加文件而不是添加jar

我的hive-site.xml将 hive.aux.jars.path 设置为/ usr / local / hive / lib /。我尝试将其更改为file:/// hdfs:// localhost:9000 /但没有更改:(

所有在线文档都说 ADD JAR |文件路径。但是没有人提到那条路。 :(

我被困在这里过去4个小时请帮助我。我错过了什么?

其他信息: 我的.bashrc

export HIVE_HOME=/usr/local/hive
export PATH=$PATH:$HIVE_HOME/bin
export CLASSPATH=$CLASSPATH:/usr/local/Hadoop/lib/*:.
export CLASSPATH=$CLASSPATH:/usr/local/hive/lib/*:.

1 个答案:

答案 0 :(得分:6)

从查询中删除'

hive> add jar hdfs://srimanthpc:9000/SpaceTravel.jar;

万一,master在localhost上

hive> add jar hdfs://localhost:9000/SpaceTravel.jar;

确保SpaceTravel.jar应该在hdfs中。

使用命令

hdfs dfs -ls /