我正在使用mrjob处理一批文件并获取一些统计信息。我知道我可以在单个文件上运行mapreduce作业,比如
python count.py < some_input_file > output
但是如何将文件目录提供给脚本?文件目录结构就像这个folder/subfolders/files
,有什么建议吗?
答案 0 :(得分:7)
好吧,最后我发现我可以指定一个目录作为输入路径,Hadoop将处理该目录中的所有文件。
在我的情况下,我有包含输入文件的子目录。 Hadoop不会递归地横向目录,并且默认会引发错误。一个常见的技巧是使用像
这样的通配符python count.py hdfs://master-host/directory/*/*.txt > result