从spark访问配置单元表

j7dteeu8  于 2021-06-26  发布在  Hive
关注(0)|答案(1)|浏览(365)

我面临一个问题:我无法使用spark submit从spark访问配置单元表,而我可以使用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:同样的结果。
编辑:我没有连接到远程配置单元服务器,但在同一个服务器上

gopyfrb3

gopyfrb31#

解决方案:我在.py文件中使用了一些udf(用户定义函数)。出于某种原因,我认为这是在创造一个环境,而我没有使用正确的环境。现在可以了。

相关问题