我有一个基于文本的压缩日志文件目录,每个文件包含许多记录。在旧版本的Hadoop中,我会扩展MultiFileInputFormat
以返回自定义RecordReader
,它会解压缩日志文件并从那里继续。但我正在尝试使用Hadoop 0.20.2。
在Hadoop 0.20.2文档中,我注意到MultiFileInputFormat
已弃用,而不是CombineFileInputFormat
。但是要扩展CombineFileInputFormat
,我必须使用已弃用的类JobConf
和InputSplit
。什么是MultiFileInputFormat
的现代等价物,或从文件目录中获取记录的现代方法?
答案 0 :(得分:2)
MultiFileInputFormat的现代等价物,或从文件目录中获取记录的现代方法是什么?
o.a.h.mapred。*具有旧API,而o.a.h.mapreduce。*是新API。某些输入/输出格式尚未迁移到新API。 MultiFileInputFormat / CombineFileInputFormat尚未迁移到20.2中的新API。我记得JIRA正在打开以迁移丢失的格式,但我不记得Jira#。
但是为了扩展CombineFileInputFormat,我必须使用不推荐使用的类JobConf和InputSplit。
现在可以使用旧的API了。在Apache论坛中查看此response。我不确定停止支持旧API的确切计划。我不认为很多人已经开始使用新的API,所以我认为它会在可预见的未来得到支持。