欢迎关注Hadoop、Spark、Flink、Hive、Hbase、Flume等大数据资料分享微信公共账号:iteblog_hadoop
  1. 文章总数:978
  2. 浏览总数:11,953,301
  3. 评论:3936
  4. 分类目录:106 个
  5. 注册用户数:6117
  6. 最后更新:2018年12月15日
过往记忆博客公众号iteblog_hadoop
欢迎关注微信公众号:
iteblog_hadoop
大数据技术博客公众号bigdata_ai
大数据猿:
bigdata_ai

Mapreduce程序:从Hadoop1.x升级Hadoop2.x

  理论上,在Hadoop 1.x上开发的Mapreduce程序可以在Hadoop 2.x上面运行,Hadoop2.x类库对Hadoop1.x程序的兼容性主要体现在以下几点:
  二进制兼容:利用mapred API开发以及编译程序可以直接在Hadoop 2.x运行,不需要重新编译;
  源码兼容:利用mapreduce API开发的程序, 需要在Hadoop 2.x上重新编译才能运行;
  不兼容部分:mradmin从Hadoop 2.x上移除了,如果某程序中用到了这个类,则该程序将不兼容Hadoop 2.x平台,但是可以用rmadmin代替mradmin。
  其他不兼容的部分:

Problematic FunctionIncompatibility Issue
org.apache.hadoop.util.ProgramDriver#drive返回类型从void变成int
org.apache.hadoop.mapred.jobcontrol.Job#getMapredJobID返回类型从String变成JobID
org.apache.hadoop.mapred.TaskReport#getTaskId返回类型从String变成TaskID
org.apache.hadoop.mapred.ClusterStatus
#UNINITIALIZED_MEMORY_VALUE
返回类型从long变成int
org.apache.hadoop.mapreduce.filecache.DistributedCach
e#getArchiveTimestamps
返回类型从long[] 变成String[]
org.apache.hadoop.mapreduce.filecache.DistributedCache
#getFileTimestamps
返回类型从long[] 变成String[]
org.apache.hadoop.mapreduce.Job#failTask返回类型从void变成boolean
org.apache.hadoop.mapreduce.Job#killTask返回类型从void变成boolean
org.apache.hadoop.mapreduce.Job#getTaskCompletionEvents返回类型从o.a.h.mapred.TaskCompletionEvent[]
变成o.a.h.mapreduce.TaskCompletionEvent[]
关于升级程序需要的依赖包可以参见本博客《Hadoop1.x程序升级到Hadoop2.x需要的依赖库》
本博客文章除特别声明,全部都是原创!
转载本文请加上:转载自过往记忆(https://www.iteblog.com/)
本文链接: 【Mapreduce程序:从Hadoop1.x升级Hadoop2.x】(https://www.iteblog.com/archives/854.html)
喜欢 (4)
分享 (0)
发表我的评论
取消评论

表情
本博客评论系统带有自动识别垃圾评论功能,请写一些有意义的评论,谢谢!
(1)个小伙伴在吐槽
  1. 初来乍到,支持下
    小白2013-12-17 11:05 回复