只是一个基本的question.I知道映射和减速是Hadoop的版本接口2.但仍编码,当我看到使用扩展映射器或此或延长减速,而不是工具。是有原因的例子由于向后兼容性,它们是否像旧版本一样实施?这里是我一直在研究的链接 https://hadoop.apache.org/docs/current/hadoop-mapreduce-client/hadoop-mapreduce-client-core/MapReduceTutorial.html#MapReduce_-_User_InterfacesMapper和Reducer是Hadoop版本2中的接口?
回答
不知道你在那个页面上看到Mapper和Reducer是MapReduce2的接口,但是该页面上的源代码明确地使用了类。关键字是extends
。
import org.apache.hadoop.mapreduce.Mapper;
import org.apache.hadoop.mapreduce.Reducer;
...
public static class TokenizerMapper extends Mapper
...
public static class IntSumReducer extends Reducer
应当提及的是,org.apache.hadoop.mapred.Mapper
和org.apache.hadoop.mapred.Reducer
是接口,但这些都意味着用于MapReduce1。
我想重新写映射和减速器作为类的目的是简化类的创建,而不使用extends MapReduceBase implements
像这样
class MyReducer<K extends WritableComparable, V extends Writable>
extends MapReduceBase implements Reducer<K, V, K, V>
感谢您的回应cricket_007。 –
您可以使用旁边的复选标记接受答案来显示您的答案 –
,我发现这个具有这些API细看时。 org.apache.hadoop.mapreduce 类减速器为Hadoop2其中映射器和减速是类和org.apache.hadoop.mapred接口减速器在那里Hadoop中1他们在那里其在Hadoop的2编译作为接口好。这只是旧的API,并支持向后兼容性
是-Mapper和减速是在HADOOP-1X类新之间的差异,并已得到增强,界面后HADOOP -2x版本
例 - CODE:
在Hadoop中的先前版本
公共静态类New_Map扩展MapReduceBase实现映射{
在HADOOP-2X
公共静态类New_Map扩展映射{
- 1. Hadoop中的Mapper和Reducer
- 2. 如何在Hadoop 1.0.4中链接mapper/reducer?
- 3. Hadoop Mapper中Mapper/Reducer的设置和清理方法MapReduce
- 4. Hadoop:使用什么来代替已弃用的接口Mapper和Reducer?
- 5. 是一个tasktracker对应hadoop中的mapper还是reducer?
- 6. 默认/找到hadoop 1.x中的mapper和reducer的数量
- 7. 是否可以将属性从mapper传递给hadoop中的reducer?
- 8. 如何在Hadoop的Mapper和Reducer中提供子类?
- 9. 在hadoop中实现多个mapper和单个reducer
- 10. Mapper和Reducer应该是内部类吗?
- 11. Hadoop版本1和版本2性能
- 12. Mapper和Reducer类是否需要部署在Hadoop集群的所有节点上
- 13. 在Mapper或Reducer中处理异常的Hadoop最佳实践是什么?
- 14. 知道mapper和reducer的用法
- 15. 如何从mapper或reducer外部增加hadoop计数器?
- 16. 使用Java Mapper/Reducer进行Hadoop流式处理
- 17. xyz场景需要多少mapper和reducer?
- 18. 的Hadoop - 减速到Mapper端口
- 19. Hadoop中reducer的好处是什么?
- 20. Hadoop Mapper类中的参数
- 21. 为什么声明Mapper和Reducer类是静态的?
- 22. Hadoop Reducer内存中的值?
- 23. 在Python中使用CountVectorizer Mapper Reducer
- 24. 在Mapper类中执行Reducer操作
- 25. Mapper将值传给不同的mappers-reducer
- 26. 接口和版本控制
- 27. Hadoop - 直接从Mapper写入HBase
- 28. Hadoop - 在Reducer中排序
- 29. jackson-all和jackson-mapper-asl的最新jar版本是什么?
- 30. Hadoop Mapper的采样记录
'org.apache.hadoop.mapreduce *'是你应该Hadoop2使用包,而这些都是没有的接口。 –