在直线中注册Hive UDF时遇到问题



我试图注册一个HIVe UDF,如下所述,但最终出现了错误。请告诉我在这种情况下该怎么办?

0:

jdbc:hive2://g4t7479.calfor.abbcorp.net:1> ADD JAR  /MAPR/DBLCLK/double_click/HiveUDF/AXX-DoubleClick-0.0.1-SNAPSHOT-jar-with-dependencies.jar;
Error: Error while processing statement: /MAPR/DBLCLK/double_click/HiveUDF/AXX-DoubleClick-0.0.1-SNAPSHOT-jar-with-dependencies.jar does not exist (state=,code=1)
0: jdbc:hive2://g4t7479.calfor.abbcorp.net:1> CREATE TEMPORARY FUNCTION stringTrim as 'com.axx.gma.dclick.StringTrim' USING JAR 'hdfs://MAPR/DBLCLK/double_click/HiveUDF/AXX-DoubleClick-0.0.1-SNAPSHOT-jar-with-dependencies.jar';
Error: Error while compiling statement: FAILED: SemanticException java.lang.IllegalArgumentException: java.net.UnknownHostException: MAPR (state=42000,code=40000)
0: jdbc:hive2://g4t7479.calfor.abbcorp.net:1> CREATE TEMPORARY FUNCTION stringTrim as 'com.axx.gma.dclick.StringTrim' USING JAR 'hdfs:://MAPR/DBLCLK/double_click/HiveUDF/AXX-DoubleClick-0.0.1-SNAPSHOT-jar-with-dependencies.jar';
Error: Error while compiling statement: FAILED: IllegalArgumentException java.net.URISyntaxException: Relative path in absolute URI: hdfs::/MAPR/DBLCLK/double_click/HiveUDF/AXX-DoubleClick-0.0.1-SNAPSHOT-jar-with-dependencies.jar (state=42000,code=40000)

错误:处理语句时出错:/MAR/DBLCLK/double_click/HiveUDF/AX-DoubleClick-0.0.1-SNAPSHOT-jar-with-dependences.jar不存在(状态=,代码=1)

上面的错误消息表明jar不是预设的,也没有添加,所以使用该jar创建函数肯定会给您带来错误。

使用以下命令检查JAR是否存在。如果您使用不同的文件系统命令,这将适用于hdfs。

hdfs dfs-ls/MAPR/DBLCLK/double_click/HiveUDF/ASX-DoubleClick-0.0.1-SNAPSHOT-jar-with-dependences.jar

如果不是,则需要将文件从本地系统移动到hdfs文件系统。或者将命令更改为ADD LOCAL JAR(但这在直线中不起作用)

即使在添加JAR时并没有出现任何错误,也最好使用以下命令(来自hive或beeline)来确保它已被添加。

列出jars;

这将显示已添加的所有罐子。

最新更新