如何在Mahout in Action中构建和执行示例

时间:2013-03-30 14:55:37

标签: hadoop compilation hbase mahout

我现在正在学习Mahout in Action,并写信询问如何在本书中构建和执行示例。我可以用eclipse找到说明,但我的环境不包括UI。所以我将第一个例子(RecommenderIntro)复制到RecommenderIntro.java并通过javac进行编译。

我收到错误,因为未导入包。所以我在寻找:

  1. 导入丢失的包的方法。

  2. 我想,即使编译成功,也会生成.class文件, 我该怎么执行呢?通过“java RecommnderIntro”?我可以执行 通过sudo -u hdfs hadoop jar mahout-examples-0.7-cdh4.2.0-job.jar org.apache.mahout.clustering.syntheticcontrol.kmeans.Job的mahout示例,我该怎么做 为我自己的例子做类似的事情?

  3. 我的所有数据都保存在HBase表中,但在书中(甚至是 谷歌),我找不到一种方法将它与HBase集成,任何 建议?

1 个答案:

答案 0 :(得分:2)

q1和q2,你需要像maven这样的java构建工具。 您使用以下命令构建hadoop-jar:'mvn clean install'这将在target / mia-job.jar中创建您的hadoop作业 然后,您执行以下工作: hadoop jar target / mia-job.jar RecommenderIntro inputDirIgnored outputDirIgnored (RecommenderIntro忽略参数,但hadoop强制你指定至少2个参数,通常是输入和输出目录)

q3:你不能开箱即用。 选项1:将hbase数据导出到文本文件“intro.csv”,内容如下:“%userId%,%ItemId%,%score%”,如本书所述。因为这是RecommenderIntro正在寻找的文件。 选项2:修改示例代码以从hbase ...

读取数据

PS1。为了开发这样的应用程序,我真的建议使用IDE。因为它允许你使用代码完成,执行,构建等。一个简单的入门方法是使用像Cloudera或HortonWorks这样的hadoop下载虚拟映像并安装像eclipse这样的IDE。您还可以配置这些图像以使用hadoop群集,但您不需要使用小型数据集。 PS2。 RecommenderIntro代码不是分布式实现,因此无法在大型数据集上运行。它也可以在本地运行,而不是在hadoop集群上运行。