共计 1968 个字符,预计需要花费 5 分钟才能阅读完成。
引言
Mahout0.9 之前的版本默认不支持 Hadoop2.2.0 以上版本,但很多情况下,由于集群环境的 Hadoop 已经是 2.2.0 以上版本,又必须使用 Mahout,此时就需要编译源码,使得 Mahout 支持 Hadoop2 了。
Hadoop2.2+Mahout0.9 实战 http://www.linuxidc.com/Linux/2014-04/99856.htm
造好的车轮
让 Mahout 在 Hadoop2.2.0 上运行是需求十分广泛的,所以必定有前人已经栽好树了,我们可以在 https://issues.apache.org/jira/browse/MAHOUT-1354
里看到 4 个升级 patch,及 patch 的作者们的详细讨论过程。
千万注意的是,不是 4 个升级 patch 按顺序依次用,而是用一个即可!
通过详细阅读了 patch 作者们的讨论,认为其中的两个 patch 最靠谱:
1329-3.patch
1329-3-additional.patch
经笔者实测,对于 Mahout0.9,1329-3-additional.patch 是无法成功应用的,而 1329-3.patch 可以成功应用。
到 http://archive.apache.org/dist/mahout/ 或者 https://github.com/apache/mahout/releases 去下载源码,解压到服务器上。
到 https://issues.apache.org/jira/browse/MAHOUT-1354 下载1329-3.patch,拷贝到服务器上。
到源码根目录下执行以下命令打 patch:
yarn@singletest:~/Mahout/mahout-distribution-0.9$ patch -p0 < ../mahout0.9-patch-for-hadoop2/1329-3.patch
patching file core/pom.xml
patching file integration/pom.xml
patching file pom.xml
没有报错即升级成功。
到源码根目录下执行以下命令针对 Hadoop2.2.0 编译源码
yarn@singletest:~/Mahout/mahout-distribution-0.9$mvn clean package -Dhadoop2.version=2.2.0
。。。。。。漫长等待。。。。。。
注意 : 我没有加上 -DskipTests 参数,是为了了解打 patch 后的测试效果,结果显示,全部测试都通过,没有任何问题!
验证
由于在 patch 页面中,patch 的作者有这样一句对话:
Sergey Svinarchuk added a comment – 21/Feb/14 09:46
I tested unit tests and examples with hadoop1 and hadoop2. All tests and examples passed.
相信大牛的人品和诚信,所以就不 test all examples 了,仅测试了一下贝叶斯文本分类器,参见
http://www.linuxidc.com/Linux/2014-09/106287.htm
全过程正常执行!
===============================================
Ubuntu 13.04 上搭建 Hadoop 环境 http://www.linuxidc.com/Linux/2013-06/86106.htm
Ubuntu 12.10 +Hadoop 1.2.1 版本集群配置 http://www.linuxidc.com/Linux/2013-09/90600.htm
Ubuntu 上搭建 Hadoop 环境(单机模式 + 伪分布模式)http://www.linuxidc.com/Linux/2013-01/77681.htm
Ubuntu 下 Hadoop 环境的配置 http://www.linuxidc.com/Linux/2012-11/74539.htm
单机版搭建 Hadoop 环境图文教程详解 http://www.linuxidc.com/Linux/2012-02/53927.htm
搭建 Hadoop 环境(在 Winodws 环境下用虚拟机虚拟两个 Ubuntu 系统进行搭建)http://www.linuxidc.com/Linux/2011-12/48894.htm
===============================================
更多 Hadoop 相关信息见Hadoop 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=13