如何在Spark中获取文件名?

时间:2015-08-04 23:42:12

标签: apache-spark

My Spark应用程序将文件夹作为包含大量文本文件的输入。如何以编程方式获取每个输入拆分的文件名?

2 个答案:

答案 0 :(得分:0)

试试吧。这对我有用。希望它会对你有所帮助。

val data = sc.wholeTextFiles("hdfs://master:port/vijay/mywordcount/")

val files = data.map { case (filename, content) => filename}

files.collect.foreach( filename => {
    doSomething(filename) // or print file name

}) 

答案 1 :(得分:0)

通常,您无法检索发起输入的文件名。

但是,如果您使用Hadoop HDFS FileSystem api,则可以列出目录的内容。并遍历所有文件。
但这不再是纯粹的火花计划了。它取决于所使用的存储层(HDFS,amazon s3等)。