13.2 Mahout的安装和配置

Mahout是一个开源软件,因此它有两种安装方式:一种是下载已经编译好的二进制文件进行安装(快速安装);一种是先下载源代码,然后再对源代码进行编译,最后再安装(编译安装)。下面我们分别对其进行介绍。

1.快速安装

下面为该方式的具体安装步骤:

(1)下载Mahout

从下面链接中下载编译好的二进制文件:


http://mirror.bjtu.edu.cn/apache/mahout/


选择最新的版本目录,即0.6,下载mahout-distribution-0.6.tar.gz。

(2)解压下载的文件

使用下面的命令将下载的二进制文件解压到指定的文件夹中。


tar-zxvf mahout-distribution-0.6.tar.gz-C$HADOOP_HOME/


参数-C的后面是指定的文件夹,这里是$HADOOP_HOME/。

(3)配置环境变量

由于Mahout不仅可以在本地模式下运行,还可以利用Hadoop的MapReduce运行作业。若要使用Hadoop则必须正确安装Hadoop,并配置HADOOP_HOME和HADOOP_CONF_DIR环境变量,具体参见本书第2章“Hadoop的安装与配置”。

使用下面的命令配置Mahout所需要的Hadoop环境变量:


export HADOOP_HOME=/home/hadoop/hadoop-1.0.1

export HADOOP_CONF_DIR=/home/hadoop/hadoop-1.0.1/conf


此外,为了Mahout操作方便,可以将Mahout安装位置加入到环境变量中,如下所示:


Config Mahout

export MAHOUT_HOME=/home/hadoop/hadoop-1.0.1/mahout-distribution-0.6

export MAHOUT_CONF_DIR=$MAHOUT_HOME/conf

export PATH=$MAHOUT_HOME/conf:$MAHOUT_HOME/bin:$PATH


2.编译安装

首先需要确保系统中已经安装了JDK 1.6以上版本及Maven 2.0以上版本。JDK的安装前面章节已经详细介绍,这里不再赘述。大家可以使用下面命令来安装Maven:


sudo apt-get install maven2


安装完成后,可以对maven的参数进行配置,设置其使用的Java堆空间:


sudo gedit$MAVEN_HOME/bin/mvn


在mvn文件中找到exec"$JAVACMD"\,在它之后加上-Xmx256m\即可,如下所示:


exec"$JAVACMD"\

-Xmx256m\

$MAVEN_OPTS\

-classpath"${M2_HOME}"/boot/classworlds.jar\

"-Dclassworlds.conf=${M2_HOME}/bin/m2.conf"\

"-Dmaven.home=${M2_HOME}"\

${CLASSWORLDS_LAUNCHER}$QUOTED_ARGS


其中参数-Xmx256m指定的是Java的空间大小,读者可以根据具体情况进行设置。下面为具体的操作步骤:

(1)下载最新源码

通过Mahout的svn库来下载当前Mahout的最新版本,Mahout将被下载到当前目录中:


svn co http://svn.apache.org/repos/asf/mahout/trunk


(2)执行安装

进入Mahout的根目录,输入命令安装:


cd trunk

mvn install


看到如下结果,则表明安装成功。


[INFO]———————————————————————————————————

[INFO]Reactor Summary:

[INFO]———————————————————————————————————

[INFO]Apache Mahout……SUCCESS[8.871s]

[INFO]Mahout Build Tools……SUCCESS[2.696s]

[INFO]Mahout Math……SUCCESS[39.651s]

[INFO]Mahout Core……SUCCESS[54:46.562s]

[INFO]Mahout Integration……SUCCESS[3:47.980s]

[INFO]Mahout Examples……SUCCESS[27.877s]

[INFO]Mahout Release Package……SUCCESS[0.152s]

[INFO]———————————————————————————————————

[INFO]———————————————————————————————————

[INFO]BUILD SUCCESSFUL

[INFO]———————————————————————————————————

[INFO]Total time:59 minutes 55 seconds

[INFO]Finished at:Tue Jun 05 00:07:53 PDT 2012

[INFO]Final Memory:67M/142M

[INFO]———————————————————————————————————


该命令将会自动编译core和example目录并将其打包。从上面可以看到Mahout的安装花费时间较长,这主要是由于执行testing部分的操作,使用下面命令可以略过此测试部分:


mvn-DskipTests install


注意 采用svn下载的Mahout最新源码有诸多好处,例如可以在$MAHOUT_HOME/examples/src目录下查看Mahout许多算法实现的源码。另外,此版本中还保留了很多Mahout测试使用的数据,例如$MAHOUT_HOME/core/src/test/resources/目录下FPGrowth算法使用的零售商数据。

(3)配置环境变量

环境变量的配置与快速安装相同,这里不再赘述。

3.验证是否安装成功

我们可以使用如下命令来检查Mahout是否安装成功:


bin/mahout-help


如果安装成功,系统会自动列出Mahout已经实现的所有命令,如图13-1所示。

至此Mahout安装完毕。

Mahout自带了一些示例程序,执行下面的Hadoop命令,可以运行Canopy算法示例:


bin/hadoop jar$MAHOUT_HOME/mahout-examples-0.6.job org.apache.mahout.clustering.

syntheticcontrol.canopy.Job


13.2 Mahout的安装和配置 - 图1

图 13-1 Mahout实现命令图

转到Mahout安装目录下,运行以下命令可以将结果直接显示在控制台上:


bin/mahout vectordump—seqFile/user/hadoop/output/data/part-00000