vlambda博客
学习文章列表

大数据篇-mahout安装使用

        好久没更新大数据篇内容,最近也没想好写什么,那就先继续大数据篇吧。目前大数据篇都是分享的一些基本的概念和基础的操作,等这些基本基础概念都分享完以后,我们再逐步深入,而且这样对初学者包括我自己在内,也比较容易接受,省的把大家搞得望而却步,就像广义搜索一样,一层一层逐渐加深理解。我分享的大数据篇顺序都是通过该篇  文章来讲述的,忘记之前内容的读者可以再简单翻阅一下。

大数据篇-mahout安装使用

mahout简述


        Apache Mahout是基于Lambda架构,基于计算引擎MapReduce或(Spark/Flink/Storm)开发的机器学习和数据挖掘的分布式框架, 分布式线性代数框架,旨在快速实现自己的算法,支持多个分布式后端。

        Mahout实现了常用的数据挖掘算法,包括聚类算法、回归算法、余弦相似性、分类算法、推荐过滤、频繁子项挖掘等等。

大数据篇-mahout安装使用



大数据篇-mahout安装使用
大数据篇-mahout安装使用

mahout下载安装


          这里我下载的是0.9版本的 mahout-distribution-0.9.tar.gz

        然后同样使用ftp工具将我们本地下载的压缩包上传到我们的虚拟机的hadoop集群的Master节点上的/home/hadoop/Downloads目录下,或者你也可以直接在虚拟机中下载,就是操作起来不太方便。

大数据篇-mahout安装使用


        上传完成以后,我们同样将他解压到/usr/local目录下,并修改目录名称及权限,以供后边操作使用,使用如下命令:

# 解压压缩包到指定目录下
tar -zxvf /home/hadoop/Downloads/mahout-distribution-0.9.tar.gz -C /usr/local

#
 修改目录名
sudo mv mahout-distribution-0.9 mahout

#
 修改目录权限
sudo chmod 777 mahout

        

        配置环境变量,将mahout安装目录添加到环境变量中并生效,这样我们就可以在任何目录下使用mahout命令了。如下:

#打开环境变量文件
vim ~/.bashrc

#
 添加如下命令
export MAHOUT_HOME=/usr/local/mahout
export PATH=$PATH:$MAHOUT_HOME/bin
#
 添加保存文件后,使用以下命令使环境变量立即生效
source ~/.bashrc


大数据篇-mahout安装使用


        然后执行命令 mahout ,若能列出算法则代表安装成功,如下图所示。


大数据篇-mahout安装使用


大数据篇-mahout安装使用
大数据篇-mahout安装使用

使用简单示例验证mahout


1、首先启动hadoop

        这个以前已经讲过很多次了,这里不再赘述,不清楚的小伙伴可以参考以下文章 


2、下载测试数据http://archive.ics.uci.edu/ml/databases/synthetic_control/

链接中的synthetic_control.data或者百度一下也很容易找到这个示例数据。


3、上传测试数据

测试数据下载完成后,我们同样将他传输到Master节点上,然后在Master节点将该测试数据上传到HDFS上的testdata文件夹下(默认是在当前用户主目录下)。

# 上传测试数据到hdfs上
hadoop fs -put /home/hadoop/Downloads/synthetic_control.data /user/hadoop/testdata

4、使用Mahout的kmeans聚类算法对数据进行分析,要花费几分钟的时间,执行如下命令:

hadoop jar /usr/local/mahout/mahout-examples-0.9-job.jar org.apache.mahout.clustering.syntheticcontroll.kmeans.Job

        

        本质上还是转换为 mapreduces 任务来执行,执行需要几分钟时间,如下图所示。


大数据篇-mahout安装使用


大数据篇-mahout安装使用


5、查看聚类执行结果

hadoop fs -lsr /user/hadoop/outputhadoop fs -cat /user/hadoop/output/clusteredPoints/part-m-0000