【发布时间】:2016-03-03 02:21:19
【问题描述】:
我正在尝试从文本文件中读取字符串,但我想根据特定大小限制每一行。例如;
这是我代表的文件。
aaaaa\nbbb\nccccc
当试图通过sc.textFile读取这个文件时,RDD会出现这个。
scala> val rdd = sc.textFile("textFile")
scala> rdd.collect
res1: Array[String] = Array(aaaaa, bbb, ccccc)
但我想限制这个 RDD 的大小。例如,如果限制是3,那么我应该得到这样的。
Array[String] = Array(aaa, aab, bbc, ccc, c)
做到这一点的最佳性能方式是什么?
【问题讨论】:
-
所以你想忽略行边界并分成
n字符组?几乎可以肯定,在 Spark 外部将其预处理为长度为n的行,然后使用textFile读取它会更快
标签: scala apache-spark rdd