Mahout安装
目录
简介
Mahout 是基于hadoop/spark的机器学习框架,具体分为推荐引擎(recommender engines),聚类分析(clustering),分类(classifaction)
下载0.9版本
wget http://mirrors.cnnic.cn/apache/mahout/0.9/mahout-distribution-0.9.tar.gz
版本地址
解压
tar zxvf mahout-distribution-0.9.tar.gz
配置文件
查看 $MAHOUT_HOME/bin/mahout
,可以看到需要配置几个环境变量
环境变量 | 描述 |
---|---|
MAHOUT_JAVA_HOME | 默认同 JAVA_HOME. |
MAHOUT_HEAPSIZE | 使用的最大heap size,单位MB,默认1000 |
HADOOP_CONF_DIR | hadoop 配置文件目录 |
MAHOUT_OPTS | Extra Java runtime options. |
MAHOUT_CONF_DIR | The location of the program short-name to class name mappings ,默认为”$MAHOUT_HOME/src/conf” |
MAHOUT_LOCAL | 设置不为空,则mahout 会在local运行,即使HADOOP_CONF_DIR和HADOOP_HOME都设置了。 |
MAHOUT_CORE | 设置不为空,则mahout在开发者模式下运行,相当于设为为命令行下mahout -core,此时mahout在local运行,从target/classes加载类,而不是从jar包中读取。 |
所以确保如下环境变量设置,可以设置在~/.bashrc,也可以设置在bin/mahout中
$JAVA_HOME
$MAHOUT_HOME
$HADOOP_CONF_DIR
生效设置
source ~/.bashrc
验证是否安装完成
mahout
测试
下载数据集
wget http://archive.ics.uci.edu/ml/databases/synthetic_control/synthetic_control.data
上传hdfs
su hdfs
因为要使用org.apache.mahout.clustering.syntheticcontrol.kmeans.Job
,源码中默认读取的目录在/user/$runtimeUser/testdata
所以将文件上传至
hdfs dfs -put synthetic_control.data /user/hdfs/testdata
运行
mahout -core org.apache.mahout.clustering.syntheticcontrol.kmeans.Job