【问题标题】:How can I iterately process all files under one directory using mrjob如何使用 mrjob 迭代处理一个目录下的所有文件
【发布时间】:2012-11-25 13:52:11
【问题描述】:

我正在使用 mrjob 处理一批文件并获取一些统计信息。我知道我可以在单个文件上运行 mapreduce 作业,例如

python count.py < some_input_file > output

但是如何将文件目录提供给脚本?文件目录结构是这样的folder/subfolders/files,有什么建议吗?

【问题讨论】:

    标签: python hadoop mrjob


    【解决方案1】:

    嗯,最后我发现我可以指定一个目录作为输入路径,Hadoop 会处理该目录中的所有文件。

    在我的例子中,我还有包含输入文件的子目录。 Hadoop 不会递归遍历目录,默认会报错。一个常见的技巧是使用通配符 glob 之类的

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-10-23
      • 1970-01-01
      • 2022-01-13
      相关资源
      最近更新 更多