将Parquet文件加载到作为Parquet失败存储的Hive表中(值是null)

问题描述 投票:0回答:1

我只是试图在配置单元中创建一个存储为镶木地板文件的表,然后将保存数据的csv文件转换为镶木地板文件,然后将其加载到hdfs目录中以插入值。我正在做的序列,但无济于事:

首先,我在Hive中创建了一个表:

CREATE external table  if not EXISTS db1.managed_table55 (dummy string)
stored as parquet
location '/hadoop/db1/managed_table55';

然后我使用此火花将镶木地板文件加载到上述hdfs位置:

df=spark.read.csv("/user/use_this.csv", header='true')
df.write.save('/hadoop/db1/managed_table55/test.parquet', format="parquet")

它加载了,但是这里是输出……所有空值:enter image description here

这里是use_this.csv文件中的原始值,我将其转换为镶木地板文件:enter image description here

这证明指定位置创建了表的文件夹(managed_table55)和文件(test.parquet):enter image description here

enter image description here

任何想法或建议,为什么会持续发生?我知道可能有一个小的调整,但我似乎无法识别。

apache-spark hadoop hive pyspark impala
1个回答
2
投票

正在将镶木地板文件写入此位置的/hadoop/db1/managed_table55/test.parquet时,请尝试在同一位置创建表并从配置单元表中读取数据。

© www.soinside.com 2019 - 2024. All rights reserved.