在Apache Spark中加载多个文件时查找单个文件名

时间:2016-07-08 20:23:26

标签: scala apache-spark google-cloud-dataproc

我有一个Apache Spark作业,可以使用

加载多个文件进行处理
val inputFile = sc.textFile(inputPath)

这很好用。但是,出于审计目的,当inputPath是通配符时,跟踪哪个行来自哪个文件会很有用。类似于RDD [(String,String)],其中第一个字符串是输入文本行,第二个是文件名。

具体来说,我正在使用Google的Dataproc,而且这些文件位于Google云端存储中,因此路径类似于'gs://my_data/*.txt'。

1 个答案:

答案 0 :(得分:0)

查看SparkContext#wholeTextFiles

有时,如果您使用许多输入路径,您可能会发现自己想要将工作资源用于此文件列表。为此,您可以在improving performance of wholeTextFiles in pyspark上使用此答案的Scala部分(忽略所有python位,scala部分是重要的)。