【发布时间】:2019-02-23 07:10:51
【问题描述】:
我正在处理 poc,我需要在其中创建数据框,然后将其保存为 ctrl 分隔文件。 我创建中间结果的查询如下
val grouped = results.groupBy("club_data","student_id_add","student_id").agg(sum(results("amount").cast(IntegerType)).as("amount"),count("amount").as("cnt")).filter((length(trim($"student_id")) > 1) && ($"student_id").isNotNull)
将结果保存到文本文件中
grouped.select($"club_data", $"student_id_add", $"amount",$"cnt").rdd.saveAsTextFile("/amit/spark/output4/")
输出:
[amit,DI^A356035,581,1]
它将数据保存为逗号分隔,但我需要将其另存为 ctrl-A 单独 我尝试了 option("delimiter", "\u0001") 但似乎 dataframe/rdd 不支持它。
有什么有用的功能吗?
【问题讨论】:
-
您可以在rdd上使用mkString()函数并保存为文本文件。
-
使用 Spark CSV 写入数据。指定
option("delimiter", "\\01")
标签: scala apache-spark dataframe apache-spark-sql