Hadoop MapReduce 提供嵌套目录作为作业输入

2024-03-27

我正在从事一项处理嵌套目录结构的工作,其中包含多个级别的文件:

one/
├── three/
│   └── four/
│       ├── baz.txt
│       ├── bleh.txt
│       └── foo.txt
└── two/
    ├── bar.txt
    └── gaa.txt

当我添加one/作为输入路径,不会处理任何文件,因为没有文件在根级别立即可用。

我读到job.addInputPathRecursively(..),但这似乎在最近的版本中已被弃用(我使用的是 hadoop 1.0.2)。我编写了一些代码来遍历文件夹并添加每个目录job.addInputPath(dir),直到由于某种原因(例如,尝试将目录作为输入文件处理时作业崩溃)为止。 - 尝试去fs.open(split.getPath()), when split.getPath()是一个目录(这发生在LineRecordReader.java).

我试图说服自己必须有一种更简单的方法来提供具有嵌套目录结构的作业。有任何想法吗?

EDIT- 显然有一个open bug https://issues.apache.org/jira/browse/MAPREDUCE-3193关于这一点。


我没有找到任何关于此的文件,但是*/*作品。所以就是-input 'path/*/*'.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Hadoop MapReduce 提供嵌套目录作为作业输入 的相关文章

随机推荐