本文主要是介绍在sparkSQL中无法找到Hive表apache.spark.sql.catalyst.analysis.NoSuchTableException:Table or view ‘emp‘ not f,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1.问题描述
使用Scala编程,通过SparkSession连接hive中的表,但是没有找到,报错:
Exception in thread "main" org.apache.spark.sql.catalyst.analysis.NoSuchDatabaseException: Table or view 'emp' not found in database 'default';
然而,在spark-shell中使用同样的命令,却可以访问到hive中的表。很纠结!
附上代码:
val spark=SparkSession.builder().appName("HiveMySQLApp").master("local[2]").getOrCreate()//加载hive表val hiveDF=spark.table("emp")//关闭spark.close()
2.问题原因
SparkSession没有开启支持hive的功能
3.解决办法
在SparkSession添加支持hive的配置:SparkSession.enableHiveSupport()
val spark=SparkSession.builder().appName("HiveMySQLApp").master("local[2]").enableHiveSupport().getOrCreate()//加载hive表val hiveDF=spark.table("emp")//关闭spark.close()
解决!
这篇关于在sparkSQL中无法找到Hive表apache.spark.sql.catalyst.analysis.NoSuchTableException:Table or view ‘emp‘ not f的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!