首页 > 解决方案 > 无法在 spark Sql-Incomplete HDFS URI 中读取临时表

问题描述

import org.apache.spark.sql.hive.orc._
import org.apache.spark.sql._
val sparksession=SparkSession.builder()
    .master("local").appname("MyApp").enableHiveSupport.getOrCreate();
val  Df1=sparksession.read.format("csv").option("header","false")
   .option("inferSchema","false").load("file_loc/file_name") 
Df1.createOrReplaceTempView("Temp_Table")
val Df2=sparksession.sql(select * from Temp_Table)

我正在尝试从临时表中读取数据,但是在从该表中选择数据时,我遇到了不完整的 HDFS URI 问题。

直到Df1.createOrReplaceTempView("Temp_Table")行一切正常,但是当我执行最后一行时,出现错误消息。

org.apache.spark.sql.AnalysisException:org.apache.hadoop.hive.q1.metadata.HiveException:MetadataException(message:message:MetadataException(message:
Got exception:java.io.IOException Incomplete HDFS URI,no host: hdfs://hostname:port:port/apps/spark/warehouse))


Caused by:org.apache.hadoop.hive.ql.metadata.HiveException: MetadataException((message:message:MetadataException(message:
Got exception:java.io.IOException Incomplete HDFS URI,no host: hdfs://hostname:port:port/apps/spark/warehouse))

Caused by:org.apache.hadoop.hive.metastore.api.MetadataException:MetadataException((message:message:MetadataException(message:
Got exception:java.io.IOException Incomplete HDFS URI,no host: hdfs://hostname:port:port/apps/spark/warehouse))

检查了所有配置文件,但找不到要在配置文件中某处设置两次的端口号,如上面的错误消息中所述。您能否提示我还需要检查什么才能解决此问题?或者有什么方法可以使用 sparksession 设置这个值?

标签: apache-sparkhadoophivehdfs

解决方案


推荐阅读