读起来非常简单标准 CSV文件,例如:
val t = spark.read.format("csv")
.option("inferSchema", "true")
.option("header", "true")
.load("file:///home/xyz/user/t.csv")
它读取一个真正的 CSV 文件,例如
fieldName1,fieldName2,fieldName3
aaa,bbb,ccc
zzz,yyy,xxx
and t.show
产生了预期的结果。
我需要逆,写入标准 CSV 文件(不是非标准文件的目录)。
当没有看到相反的结果时,这是非常令人沮丧的write
用来。也许有其他选择或某种format (" REAL csv please! ")
exists.
NOTES
我正在使用 Sparkv2.2并运行测试火花壳.
的“语法逆”read is write,因此预计会产生相同的文件格式用它。但结果是
t.write.format("csv").option("header", "true").save("file:///home/xyz/user/t-writed.csv")
不是 CSV 文件rfc4180标准格式,与原始格式相同t.csv
,
but a t-writed.csv/
包含该文件的文件夹part-00000-66b020ca-2a16-41d9-ae0a-a6a8144c7dbc-c000.csv.deflate _SUCCESS
这似乎是“镶木地板”、“ORC”或其他格式。
任何具有“读某物”的完整工具包的语言都能够“写某物”,它是一种正交原理.
类似的没有解决
类似的问题或链接没有解决问题,可能使用了不兼容的 Spark 版本,或者可能火花外壳使用它的限制。他们为专家提供了很好的线索: