【发布时间】:2015-12-22 15:09:22
【问题描述】:
这样做的目的是为了在 HDFS 的第二个位置操作和保存每个数据文件的副本。我将使用
RddName.coalesce(1).saveAsTextFile(pathName)
将结果保存到 HDFS。
这就是为什么我想单独处理每个文件,即使我确信性能不会那么高效。但是,我还没有确定如何将 CSV 文件路径列表存储到字符串数组中,然后使用单独的 RDD 循环遍历每个字符串。
让我们使用以下匿名示例作为 HDFS 源位置:
/data/email/click/date=2015-01-01/sent_20150101.csv
/data/email/click/date=2015-01-02/sent_20150102.csv
/data/email/click/date=2015-01-03/sent_20150103.csv
我知道如何使用 Hadoop FS Shell 列出文件路径:
HDFS DFS -ls /data/email/click/*/*.csv
我知道如何为所有数据创建一个 RDD:
val sentRdd = sc.textFile( "/data/email/click/*/*.csv" )
【问题讨论】:
标签: scala hadoop apache-spark hdfs