在Spark Json到Csv的转换?

时间:2016-01-30 06:54:17

标签: scala apache-spark apache-spark-sql spark-streaming scala-collections

我有一个像贝娄那样的Json对象

{"Event":"xyz","Name":"test","Prog":0,"AId":"367","CId":"11522"}         

使用波纹管火花脚本,我已转换为csv

 val sqlContext = new org.apache.spark.sql.SQLContext(sc)
 val df = sqlContext.load("org.apache.spark.sql.json", Map("path" -> "test1.json"))
 df.save("com.databricks.spark.csv", SaveMode.ErrorIfExists, Map("path" -> "datascv", "header" -> "true"))

我可以转换为CSV文件,我的输出是

AId,CId,Event,Name,Prog
367,11522,xyz,test,0

但是这里csv的标题是按升序排列的,但是我想用自定义格式维护我的csv文件头,比如我的json命令。

Event,Name,Prog,AId,CIdEvent,Name,Prog,AId,CId

请帮助我。

提前致谢。

1 个答案:

答案 0 :(得分:0)

您可以尝试以下操作。

val selectedData = df.select("Event", "Name", "Prog", "AId", "CId")
selectedData.save("com.databricks.spark.csv", SaveMode.ErrorIfExists,
                  Map("path" -> "datascv", "header" -> "true"))