从spark访问配置单元表

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

我面临一个问题:我无法使用spark submit从spark访问配置单元表,而我可以使用pyspark shell。下面是一段代码:

  1. from pyspark.sql import SparkSession, HiveContext
  2. spark = SparkSession \
  3. .builder \
  4. .appName("Python Spark SQL Hive integration example") \
  5. .enableHiveSupport() \
  6. .getOrCreate()
  7. spark.sql("SHOW TABLES").show()

以下是pyspark(shell)的结果:

  1. +--------+-------------+-----------+
  2. |database| tableName|isTemporary|
  3. +--------+-------------+-----------+
  4. | default| table1| false|
  5. | default| table2| false|
  6. +--------+-------------+-----------+

以下是spark submit的结果:

  1. +--------+---------+-----------+
  2. |database|tableName|isTemporary|
  3. +--------+---------+-----------+
  4. +--------+---------+-----------+

我尝试将spark conf目录添加到类路径,使用hive-site.xml添加“--files”,还尝试使用hivecontext,得到了相同的结果。我试过scala:同样的结果。
编辑:我没有连接到远程配置单元服务器,但在同一个服务器上

gopyfrb3

gopyfrb31#

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

相关问题