Hadoop-2.2.0中文文档—— 从Hadoop 1.x 迁移至 Hadoop 2.x
简单介绍
本文档对从 Apache Hadoop 1.x 迁移他们的Apache Hadoop MapReduce 应用到
Apache Hadoop 2.x 的用户提供了一些信息。
在 Apache Hadoop 2.x 中,我们已经把资源管理功能放入 分布式应用管理框架 的Apache
Hadoop YARN,而 Apache Hadoop MapReduce (亦称 MRv2) 保持为一个纯分布式计算框架。
总之,之前的 MapReduce 执行时 (亦称 MRv1) 已经被重用而且不会有重大功能放在其上(?
)。
因此,MRv2 能够确保与MRv1 应用之间的兼容性。然而,因为一些改进和代码重构,一些API已经导致后向不兼容。
本页的剩余部分将讨论在Apache Hadoop MapReduce 2.x (MRv2)中我们支持的后向兼容的范围和级别。
Binary 兼容性
首先,我们确保对使用旧的mapred的应用二进制兼容。这意味着使用 MRv1 mapred API
创建的应用不用又一次编译就可直接在YARN上执行。只须要通过配置把它们指向一个 Apache Hadoop 2.x 集群。
Source 兼容性
我们不能确保使用mapreduce API的应用的二进制兼容,由于这些API从MRv1起已经改变了非常多。然而,我们确保对mapreduce API
的兼容性。
换句话说,用户能够用MRv2的mapreduce API 又一次编译他们的应用。一个显著的二进制不兼容是 Counter 和 CounterGroup。
不支持的
在MRv2 中 MRAdmin 已经被删除了。由于 mradmin
命令不存在了。他们已经被 rmadmin 中的命令取代了。我们不支持直接使用这个类的二进制或源代码。
MRv1 用户和早期的 MRv2 适应者间的折中
不幸的是,维持对MRv1应用的二进制兼容可能导致MRv2的早期适应者的二进制不兼容问题。特别是Hadoop
0.23 用户。对于 mapred APIs, 有一大批的用户,我们已经选择兼容MRv1应用。对于 mapreduce APIs,
假设他们不显示地使用 Hadoop 0.23 应用,我们仍然是他们与MRv1应用兼容。以下是与Hadoop 0.23不兼容的 MapReduce APIs 列表。
问题函数 | 不兼容问题 |
org.apache.hadoop.util.ProgramDriver#drive |
Return type changes from void to int |
org.apache.hadoop.mapred.jobcontrol.Job#getMapredJobID |
Return type changes from String to JobID |
org.apache.hadoop.mapred.TaskReport#getTaskId |
Return type changes from String to TaskID |
org.apache.hadoop.mapred.ClusterStatus#UNINITIALIZED_MEMORY_VALUE |
Data type changes from long to int |
org.apache.hadoop.mapreduce.filecache.DistributedCache#getArchiveTimestamps |
Return type changes from long[] to String[] |
org.apache.hadoop.mapreduce.filecache.DistributedCache#getFileTimestamps |
Return type changes from long[] to String[] |
org.apache.hadoop.mapreduce.Job#failTask |
Return type changes from void to boolean |
org.apache.hadoop.mapreduce.Job#killTask |
Return type changes from void to boolean |
org.apache.hadoop.mapreduce.Job#getTaskCompletionEvents |
Return type changes from o.a.h.mapred.TaskCompletionEvent[] too.a.h.mapreduce.TaskCompletionEvent[] |
Malicious
对于将要在YARN上试用 hadoop-examples-1.x.x.jar
的用户,请注意 hadoop
-jar hadoop-examples-1.x.x.jar 还是会使用hadoop-mapreduce-examples-2.x.x.jar
,
其与其它的 MRv2 jars 一同安装. 默认地, Hadoop 框架包在classpath中出如今用户的jar之前,以便2.x.x 包中的类仍会被选中。
用户在集群中的全部节点的classpath中应该删除 hadoop-mapreduce-examples-2.x.x.jar
。
否则。用户应该设置 HADOOP_USER_CLASSPATH_FIRST=true
而且HADOOP_CLASSPATH=...:hadoop-examples-1.x.x.jar
去运行他们的目标演示样例jar,
还要在 mapred-site.xml
中加入配置。使得 YARN 容器进程会调用这个jar包。
<property>
<name>mapreduce.job.user.classpath.first</name>
<value>true</value>
</property>
Hadoop-2.2.0中文文档—— 从Hadoop 1.x 迁移至 Hadoop 2.x的更多相关文章
- Apache Spark 2.2.0 中文文档
Apache Spark 2.2.0 中文文档 - 快速入门 | ApacheCN Geekhoo 关注 2017.09.20 13:55* 字数 2062 阅读 13评论 0喜欢 1 快速入门 使用 ...
- Apache Storm 1.1.0 中文文档 | ApacheCN
前言 Apache Storm 是一个免费的,开源的,分布式的实时计算系统. 官方文档: http://storm.apache.org 中文文档: http://storm.apachecn.org ...
- Django2.0中文文档
title: Django2.0中文文档 tags: Python,Django,入沐三分 grammar_cjkRuby: true --- Django2.0版本已经发布了,我们先来看一个图片 从 ...
- webpack4.0中文文档踩坑记录
一直没有正儿八经去看过webpack4.0的文档,前段时间工作比较轻松,于是就有了此文...面都这样一个问题:请问在您的开发生涯中,令你最痛苦最无奈的是什么?小生的回答只有一个:“阅读那些令人发指的文 ...
- Apache Spark 2.2.0 中文文档 - 概述 | ApacheCN
Spark 概述 Apache Spark 是一个快速的, 多用途的集群计算系统. 它提供了 Java, Scala, Python 和 R 的高级 API,以及一个支持通用的执行图计算的优化过的引擎 ...
- Apache Spark 2.2.0 中文文档 - Spark RDD(Resilient Distributed Datasets)论文 | ApacheCN
Spark RDD(Resilient Distributed Datasets)论文 概要 1: 介绍 2: Resilient Distributed Datasets(RDDs) 2.1 RDD ...
- Apache Spark 2.2.0 中文文档 - Spark 编程指南 | ApacheCN
Spark 编程指南 概述 Spark 依赖 初始化 Spark 使用 Shell 弹性分布式数据集 (RDDs) 并行集合 外部 Datasets(数据集) RDD 操作 基础 传递 Functio ...
- Apache Spark 2.2.0 中文文档 - Spark SQL, DataFrames and Datasets Guide | ApacheCN
Spark SQL, DataFrames and Datasets Guide Overview SQL Datasets and DataFrames 开始入门 起始点: SparkSession ...
- Hadoop-2.2.0中文文档—— Shell命令
FS Shell 调用文件系统(FS)Shell命令应使用 bin/hadoop fs <args>的形式. 全部的的FS shell命令使用URI路径作为參数.URI格式是scheme: ...
随机推荐
- [BZOJ4247]挂饰(DP)
当最终挂饰集合确定了,一定是先挂挂钩多的在挂挂钩少的. 于是按挂钩从大到小排序,然后就是简单的01背包. #include<cstdio> #include<algorithm> ...
- ( VIJOS )VOJ 1049 送给圣诞夜的礼品 矩阵快速幂
https://vijos.org/p/1049 非常普通的矩阵快速幂... 但是我 第一次写忘了矩阵不能交换律... 第一二次提交RE直到看到题解才发现这道题不能用递归快速幂... 第三次提交成 ...
- [jzyzoj2021]lca模板题
查找最近公共祖先...我也不知道这东西有什么用,在线写法,非常之慢.... 存代码 #include<cstdio> #include<iostream> #include&l ...
- 【manacher+FFT】BZOJ3160-万径人踪灭
[题目大意] 在一个仅仅含有a,b的字符串里选取一个子序列,使得: 1.位置和字符都关于某条对称轴对称: 2.不能是连续的一段. [思路] 不连续的回文串的个数=总的回文串个数-连续回文串的个数. 后 ...
- ACM -- 算法小结(六)逆波兰表达式
逆波兰表达式 //问题描述:逆波兰表达式是一种把运算符前置的算术表达式,例如普通的表达式2+3的 //逆波兰表达式法为+ 2 3.逆波兰表达式的优点是运算符之间不必有优先级关系,也不必 //用括号改 ...
- GIT 提交步骤
1.提交 git add .
- IOS常用的第三方开发库
开发几个常用的开源类库及下载地址: 1.json json编码解码2.GTMBase64 base64编码解码3.TouchXML xml解析4.SFHFKeychainUtils 安全保存用户密码到 ...
- HDU 4669 Mutiples on a circle (2013多校7 1004题)
Mutiples on a circle Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 65535/65535 K (Java/Oth ...
- 安装sql2012 正在启动操作系统功能"NetFx3"
安装完windows8 后开始安装sql2012,安装过程中停在“正在启动操作系统功能"NetFx3"”不动了,很是着急,于是上网查了一下资料,原来NetFx3指的是Framewo ...
- Ext树形结构
<html> <head> <meta http-equiv="Content-Type" content="text/html; char ...