Mahout测试

发布 : 2016-02-12 分类 : 大数据 浏览 :

1.安装rar工具

1
2
3
[root@node1 software]# tar -zxf rarlinux-x64-5.3.0.tar.gz
[root@node1 software]# cd rar
[root@node1 rar]# make

2.将mahout-mahout-0.9目录文件上传到指定目录下

3.运行一个Mahout案例

1
运行Mahout自带的Kmeans算法,同时验证安装的Mahout是否能够正常运行。

3.1.准备测试数据

1
2
3
下载文件synthetic control.data

(下载地址:http://archive.ics.uci.edu/ml/databases/synthetic_control/synthetic_control.data)

3.2.将下载好的数据上传到$MAHOUT_HOME/data目录下

1
2
[root@node1 mahout-mahout-0.9]# mkdir data
[root@node1 mahout-mahout-0.9]# ls data

##4、在hdfs文件系统中创建testdata文件夹

1
2
[root@node1 hadoop-2.5.1]# hadoop fs -mkdir -p /user/root/testdata
[root@node1 hadoop-2.5.1]# hadoop fs -ls /

##5、把测试数据传入到hdfs文件系统中

1
2
[root@node1 hadoop-2.5.1]# hadoop fs -copyFromLocal /opt/modules/mahout-mahout-0.9/data/synthetic_control.data /user/root/testdata
[root@node1 hadoop-2.5.1]# hadoop fs -ls /user/root/testdata

##6、然后调用mahout中的examples得jar包来跑第一个例子,将600个点的数据源进行聚类

1
[root@node1 hadoop-2.5.1]# ./bin/hadoop jar /opt/modules/mahout-mahout-0.9/examples/target/mahout-examples-0.9-job.jar org.apache.mahout.clustering.syntheticcontrol.canopy.Job

1
2
3
4
5
程序分别运行了3个Job任务,最后把原始数据分为六类。

在HDFS文件系统中/user/root/output文件夹中可以看到输出的文件,但是这些文件都是序列文件,

我们使用Mahout的文件转换把序列文件转换为文本文件,这样就能比较清晰地分析输出结果。

##7、给$MAHOUT_HOME/bin/mahout目录给执行权限

1
2
3
[root@node1 mahout-mahout-0.9]# chmod u+x ./bin/mahout

[root@node1 mahout-mahout-0.9]# ./bin/mahout clusterdump -i output/clusters-0-final -p output/clusteredPoints -o test.txt

1
2
3
4
5
6
7
8
9
我们可以将文件拿到当前文件夹存为test.txt文件

-i是输入文件路径,即运行Canopy算法产生的中心点文件路径(HDFS文件系统);

-p是运行Canopy算法后把原始数据分类后的数据文件目录(HDFS文件系统);

-o是分类结果的所有文本文件要生成的文件路径(本地文件系统)。

Clusterdump是有其他参数的,这里只用到这三个就可以了。
1
[root@node1 mahout-mahout-0.9]# cat test.txt

利用Mahout实现协同过滤

1
在HDFS文件系统上创建文件目录
1
[root@node1 hadoop-2.5.1]# hadoop fs -mkdir -p /usr/matrix/input/file

将数据文件上传至HDFS指定目录下

1
[root@node1 hadoop-2.5.1]# hadoop fs -put item.txt /usr/matrix/input/file/

使用Mahout内置算法库,实现协同过滤

1
[root@node1 mahout-mahout-0.9]# ./bin/mahout recommenditembased -s SIMILARITY_LOGLIKELIHOOD -i /usr/matrix/input/file/ -o /usr/matrix/output --numRecommendations 25

查看运行结果:

1
2
[root@node1 hadoop-2.5.1]# hadoop fs -ls  /usr/matrix/output
[root@node1 hadoop-2.5.1]# hadoop fs -cat /usr/matrix/output/part-r-00000

查看命令帮助

1
[root@node1 mahout-mahout-0.9]# ./bin/mahout recommenditembased

本文作者 : Matrix
原文链接 : https://matrixsparse.github.io/2016/02/12/Mahout测试/
版权声明 : 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明出处!

知识 & 情怀 | 二者兼得

微信扫一扫, 向我投食

微信扫一扫, 向我投食

支付宝扫一扫, 向我投食

支付宝扫一扫, 向我投食

留下足迹