我遇到了一个问题:我无法使用spark-submit从Spark访问Hive表,而我可以使用pyspark shell . 这是一段代码:
from pyspark.sql import SparkSession, HiveContext
spark = SparkSession \
.builder \
.appName("Python Spark SQL Hive integration example") \
.enableHiveSupport() \
.getOrCreate()
spark.sql("SHOW TABLES").show()
这是pyspark(shell)的结果:
+--------+-------------+-----------+
|database| tableName|isTemporary|
+--------+-------------+-----------+
| default| table1| false|
| default| table2| false|
+--------+-------------+-----------+
以下是spark-submit的结果:
+--------+---------+-----------+
|database|tableName|isTemporary|
+--------+---------+-----------+
+--------+---------+-----------+
我尝试将spark conf目录添加到类路径中,使用hive-site.xml添加“--files”,我也尝试使用Hivecontext,并得到相同的结果 . 我尝试使用scala:结果相同 .
编辑:我没有连接到远程Hive服务器,但在同一个
1 回答
Solution found :我在.py文件中使用了一些UDF(用户定义的函数) . 出于某种原因,我认为它使用了正确的一个 . 它现在工作正常 .