【发布时间】:2016-06-09 09:05:22
【问题描述】:
我正在使用 spark java API 将不同类型的文件(文本、xml、csv 等)解析为特定的文本文件格式。该输出文件保持文件头、开始标签、数据头、数据和结束标签的顺序。所有这些元素都是在某个时候从输入文件中提取的。 我尝试通过以下两种方式实现这一目标:
- 使用 spark textFile 将文件读取到 RDD 并使用返回新 RDD 的 map 或 mapPartions 执行解析。
- 使用 sparks textFile 读取文件,使用 coalesce 减少到 1 个分区,并使用返回新 RDD 的 mapPartions 执行解析。
虽然我不关心实际数据的排序,但使用第一种方法我无法保持文件头、开始标签、数据头和结束标签的所需顺序。 后者对我有用,但我知道这不是有效的方法,并且在大文件的情况下可能会导致问题。
有没有什么有效的方法来实现这一点?
【问题讨论】:
标签: apache-spark