mahout的安装及实验
Apache Mahout 简介
http://www.ibm.com/developerworks/cn/java/j-mahout/
一.安装mahout需要的软件:
1,jdk 1.6或以上 ,下载地址不提供了。
2,maven 软件项目管理工具。下载地址:http://maven.apache.org/download.html 最新版本apache-maven-3.0.4-bin.tar.gz
3,hadoop mahout进行计算是调用的hadoop,类似hive。hadoop的版本要高,0.20会出问题,具体要多高不知道。用1.0以上的就可以。
4,mahout http://www.apache.org/dyn/closer.cgi/mahout 我用的是0.6最新版本。
二.安装
1,jdk安装,安装步骤不介绍,设置好JAVA_HOME环境变量就可以,前面最好加export,记得source。
2,maven安装,解压maven包,设置好MAVEN_HOME和bin的PATH。不需要改什么配置文件。
3,hadoop安装,参见百度。设置好HADOOP_HOME和HADOOP_CONF_DIR ,这两个必须要设置。
4,mahout安装,解压包,设置好MAHOUT_HOME和bin的PATH,其实不设置也没关系,不过要进入bin目录才能敲命令。
检验安装成功。
1,敲java,javac命令,有反应就行。
2,敲mvn命令,
3,hadoop fs -put和-get操作正常,wordcout程序运行正常。
4,敲mahout命令正常
三.测试与实验
1,保证你的hadoop 运行正常。
2,测试数据准备wget http://archive.ics.uci.edu/ml/databases/synthetic_control/synthetic_control.data wget不了就直接下载
3,
hadoop fs -mkdir testdata 后面的运行命令 mahout会默认找这个文件名的目录。
hadoop fs -put synthetic_control.data testdata
hadoop fs -lsr testdata
4,
hadoop集群来执行聚类算法
输入mahout命令会有列出很多算法
mahout org.apache.mahout.clustering.syntheticcontrol.canopy.Job 其输入目录默认为testdata,一下都是
mahout org.apache.mahout.clustering.syntheticcontrol.kmeans.Job
mahout org.apache.mahout.clustering.syntheticcontrol.fuzzykmeans.Job
mahout org.apache.mahout.clustering.syntheticcontrol.dirichlet.Job
mahout org.apache.mahout.clustering.syntheticcontrol.meanshift.Job
输出默认在output下(不同的算法的结果output下目录文件是不一样的,有的带有clusters0,1,2等等):
其中聚类结果保存在第一个文件夹中,当然,结果是Sequence File,不能直接双击打开来看。
这貌似是查看sequence file的方法,讲hadoop hdfs中的结果导入到本地a.txt,然后查看。
输入目录是hdfs的路径 输出目录是本地路径
mahout seqdumper -s output/clusters-3-final/part-r-00000 -o /home/mahout/a.txt
或者用mahout seqdumper --seqFile output/data/part-m-00000直接查看
参考学习网页:
canopy聚类算法:
http://www.cnblogs.com/vivounicorn/archive/2011/10/08/2201986.html
K-Means聚类算法:
http://www.cnblogs.com/vivounicorn/archive/2011/10/08/2201986.html
各算法中英文对照,以及在windows xp下利用Eclipse构建Mahout:
http://www.cnblogs.com/wentingtu/archive/2011/12/22/2297496.html
这个家伙正在翻译Mahout in action这本书:
http://running.iteye.com/category/144188