如何使用mrjob迭代处理一个目录下的所有文件

siotufzp  于 2021-06-03  发布在  Hadoop
关注(0)|答案(1)|浏览(292)

我正在使用mrjob处理一批文件并获得一些统计数据。我知道我可以在一个文件上运行mapreduce作业,比如

python count.py < some_input_file > output

但是我怎样才能给脚本提供一个文件目录呢?文件目录结构如下 folder/subfolders/files ,有什么建议吗?

irtuqstp

irtuqstp1#

最后,我发现我可以指定一个目录作为输入路径,hadoop将处理该目录中的所有文件。
在我的例子中,我还有包含输入文件的子目录。hadoop不会递归地遍历目录,默认情况下会引发错误。一个常见的技巧是使用通配符glob-like

python count.py hdfs://master-host/directory/*/*.txt > result

相关问题