首页 文章

从Spark访问Hive表

提问于
浏览
0

我遇到了一个问题:我无法使用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 回答

  • 0

    Solution found :我在.py文件中使用了一些UDF(用户定义的函数) . 出于某种原因,我认为它使用了正确的一个 . 它现在工作正常 .

相关问题