使用 PySpark 而非 HUE 读取数据时获取空值

Getting null values when reading data with PySpark but not with HUE

我正在尝试使用 PySpark 读取分区数据,但对于某些分区,它以某种方式为我提供了所有列(分区列除外)的 NULL 值。

当我查看HUE/Hive中的数据时,一切正常。我一直在谷歌上搜索这个问题并发现了这个:

https://community.cloudera.com/t5/Support-Questions/Pyspark-Table-Dataframe-returning-empty-records-from/td-p/35836

这与我的问题非常接近,但是,如果我不是 mistkane,这仅指的是自己创建的数据,然后以 Parquet 格式存储。但是,我想阅读的 table 是“EXTERNAL TABLE”格式,我已经设法用

阅读了它

df = spark.read.parquet('hdfs location')

但结果是一样的。有什么解决这个问题的建议吗?

谢谢!

好的,通过尝试以下方法解决了问题:sqlContext.setConf("spark.sql.hive.convertMetastoreParquet", "false") 来自这里: