为了开题,最近一直在看论文,从中科院的论文Balanced Parallel FP-Growth with MapReduce中看到了mahout,于是google了一下,发现mahout里面实现了PFP,具体可以参见https://cwiki.apache.org/confluence/display/MAHOUT/Parallel+Frequent+Pattern+Mining。于是就开始安装mahout.
1、安装maven
官网下载apache-maven-3.1.1-bin.tar.gz,解压到/usr,在/home/lmdyyh/.bashrc中配置maven路径。M2_HOME=/usr/apache-maven-3.1.1/ export PATH=$M2_HOME/bi n:$PATH。若执行mvn -v成功,可说明安装成功。rpm包管理的话可直接yum安装,yum install maven
2、安装mahout
官网http://archive.apache.org/dist/mahout/0.8/下载mahout-distribution-0.8.tar.gz,解压到/usr,在/usr/mahout-distribution-0.8/bin/mahout中添加export JAVA_HOME=/usr/java/jdk1.7.0_40/jre export HADOOP_HOME=/usr/hadoop-2.1.0-beta。最后在MAHOUT_HOME目录下,执行mvn clean && mvn compile && mvn -DskipTests install。最后显示success即表示成功安装。在MAHOUT_HOME/bin目录下,执行./mahout --help 可以看到mahout目前拥有的算法。
3、安装hadoop
参见www.linuxidc.com/Linux/2012-12/75346.html
4运行mahout中的
所有都安装好后就可以用mahout自带的retail.dat测试一下。方便起见,root权限下,首先在/etc/profile中添加export PATH=/usr/hadoop-2.1.0-beta/bin:/usr/mahout-distribution-0.8/bin:$PATH。在hdfs中新建目录input,执行hadoop fs -mkdir input,然后将retail.bat复制到input目录中,执行hadoop fs -put /usr/mahout-distribution-0.8/core/src/test/resources/retail.dat input,此时用命令hadoop fs -ls -R input会看到retail.bat已经拷贝到hdfs中。
最后调用mahout fpg -i input/retail.dat -o output -k 50 -method mapreduce -regex '[\ ]' -s 2,即可得到运行结果。output中会生成4个文件夹,调用hadoop fs -ls -R output可看到分别为fList,frequentpatterns,fpGrowth,parallelcounting。查看结果执行mahout seqdumper -i output/frequentpatterns/part-r-00000。