如何运行mahout k意味着本地模式下的算法

时间:2014-06-26 09:38:22

标签: java hadoop hdfs mahout

是否可以在本地运行mahout k意味着java程序,以便它从本地读取数据并将其保存回本地文件系统而不是hdfs。 互联网上的所有考试都在研究hdfs。

https://github.com/tdunning/MiA/blob/master/src/main/java/mia/clustering/ch07/SimpleKMeansClustering.java

1 个答案:

答案 0 :(得分:1)

是的,有可能 - 结账SequenceFileWriter。请参阅以下代码示例,该示例将聚簇数据点写入文件。这是一篇blog帖子,详细描述了这一点:

public static void writePointsToFile(List<Vector> points,
                                     String fileName,
                                     FileSystem fs,
                                     Configuration conf) throws IOException {
    Path path = new Path(fileName);
    SequenceFile.Writer writer = new SequenceFile.Writer(fs, conf,
            path, LongWritable.class, VectorWritable.class);
    long recNum = 0;
    VectorWritable vec = new VectorWritable();
    for (Vector point : points) {
        vec.set(point);
        writer.append(new LongWritable(recNum++), vec);
    }
    writer.close();
}