我编写了一些例程Hadoop MapReduce作业,因此仅根据给定Apache Hadoop源代码中的一些示例调用context.write()方法。但是这样的复制并不能帮助我更深入地理解Hadoop API。
因此,最近我开始更仔细地阅读Hadoop API文档(https://hadoop.apache.org/docs/r2.7.0/api/),并尝试找出除了context.write()之外,上下文中还有其他方法。例如,在teragen示例中,使用了context.getCounter()。
但令我惊讶的是,我在上面的链接中根本找不到Context类文档。
在哪里可以找到hadoop中Context类的文档?
发布于 2016-07-06 16:00:28
如果深入研究标准的Mapper class源代码(大约在第106行),就可以开始弄清楚到底发生了什么。
public abstract class Context
implements MapContext<KEYIN,VALUEIN,KEYOUT,VALUEOUT> {
}所以这只是一个abstract class,它实现了MapContext接口found here (Javadoc link)。
具体的实现是MapContextImpl found here。
看起来ContextFactory (source)负责创建上下文的不同实现。
https://stackoverflow.com/questions/38205848
复制相似问题