Dataframe保存文件

网上查看了Dataframe如何把结果保存成文件经过尝试都以失败告终,大多数的博客上写的都是使用:在spark-shell模式下 先导入 import org.apache.saprk.sql.SaveMode 的包,然后 result.repartitione(1).save("…/out.json",“json”,SaveMode.Overwrite) 这样的方式来保存结果,我无论怎么尝试都是报错

在这里插入图片描述

不知道是版本问题还是什么原因,都是save的错,本人使用的版本Spark-2.4.3 ,hive-2.3 .4,望有朋友找到解决这个问题的原因告知一下,在此谢过。

回归正题既然问题出在save上咋就想着不用它了找其他方法替代于是使用以下办法

这里的re是我已经处理好的结果的常量

re.write.mode(SaveMode.Overwrite).json("result.json")

发现没报错真是太好
在这里插入图片描述
查看文件发现把我结果的每一列作为一个文件存储
Dataframe保存文件_第1张图片

要合成一个文件来存储就要加上repartition(1)或者coalesce(1)

在这里插入图片描述
Dataframe保存文件_第2张图片

存储在本地的方式

re.repartition(1).write.csv("file:/root/out")

在这里插入图片描述
Dataframe保存文件_第3张图片

你可能感兴趣的:(Spark)