我有一个python脚本,它将sparkDataframe保存为csv到hdfs。
df.write.format('com.databricks.spark.csv').save(filename, header='true', sep=',')
然后我需要合并hdfs中的part.csv文件,然后将它们作为单个.csv文件下载到本地位置。我正在使用-getmerge。我现在面临的问题是,在组合部件文件时,头被附加了多次,这是不需要的。我想得到一个只有一个头的.csv文件。有可能吗?
subprocess.call("/usr/local/hadoop/bin/hdfs dfs -getmerge " + filename + " " + single_csv, shell=True)
保存到hdfs时无法使用.coalesce(1),因为文件太大,导致预期内存不足。
1条答案
按热度按时间roqulrg31#
试试这个-
加载数据
将数据保存为csv,不带标题
保存列名
然后可以合并