如何修复失败:创建配置单元表时出现“ java.net.URISyntaxE接收错误:绝对URI中的相对路径”

时间:2019-03-29 02:42:59

标签: apache-spark hadoop hive hive-table

我将使用以下代码在Hive中创建一个外部表:

CREATE EXTERNAL TABLE product(productID int, code string, name string, quantity int, price float)
STORED AS orc
LOCATION "user/hive/warehouse/product_orc_table_new";

但是,失败了:

FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. MetaException(message:java.lang.IllegalArgumentException: java.net.URISyntaxE
xception: Relative path in absolute URI: hdfs://nn01.itversity.com:8020./user/hive/warehouse/product_orc_table_new)

在创建外部表之前,我在Sparkshell中创建了一个名为product_orc_table_new的数据框,其格式为orc。 另外,我可以在Hive外壳中使用SHOW TABLES;找到此“ product_orc_table_new”表。

但是,在运行hdfs dfs -ls /user/hive/warehouse之后,我没有找到表“ product_orc_table_new”。

我很困惑为什么可以在Hive Shell中找到表,而不能在hdfs hive /仓库文件夹中找到表

在上一步中,我使用了 proDF.write.mode(SaveMode.Overwrite).format("orc").saveAsTable("product_orc_table_new")创建“ product_orc_table_new”表,proDF是dataframeRDD。

我想知道我在哪一步出错了?如何成功创建配置单元表? 请帮忙,谢谢!

0 个答案:

没有答案