我正在尝试在Windows上运行的应用程序中使用Mahout。我想使用k-means从lucene索引构建集群。
一旦我必须创建序列文件(从lucene索引创建向量),我就会得到一个Hadoop-Exception,因为Hadoop会对Windows环境中未知的程序(例如chmod)进行命令行调用。在Cygwin中运行不是一个选项,因为我希望能够从eclipse运行应用程序。
所以我的问题是
答案 0 :(得分:4)
在Windows环境中运行Hadoop的唯一方法是安装Cygwin。有关详细信息,请参阅此博客文章:
http://hayesdavis.net/2008/06/14/running-hadoop-on-windows/
Cygwin将提供Hadoop所依赖的所有命令行实用程序(如chmod)。如果需要,您仍然可以在Eclipse中运行Hadoop作业。
答案 1 :(得分:1)
您知道SequenceFile
API吗?看看这里:http://hadoop.apache.org/common/docs/current/api/org/apache/hadoop/io/SequenceFile.html
您可以尝试自己编写/读取数据。
我认为你可以在独立模式下从Window中的eclipse运行Mahout。但是你会出现几个缺点和障碍。你应该试试你到底有多远。
在我看来,你不应该坚持从日食中运行mahout。 ; - )
答案 2 :(得分:0)
您可以使用虚拟机来运行Hadoop环境。 至于我,最好的解决方案是使用http://hortonworks.com/项目。 一切都很好。