You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mahout.apache.org by sr...@apache.org on 2011/10/15 12:12:37 UTC
svn commit: r1183613 -
/mahout/trunk/integration/src/main/java/org/apache/mahout/utils/clustering/ClusterDumper.java
Author: srowen
Date: Sat Oct 15 10:12:37 2011
New Revision: 1183613
URL: http://svn.apache.org/viewvc?rev=1183613&view=rev
Log:
MAHOUT-701 add special handling of dumping to s3n:// / Amazon S3
Modified:
mahout/trunk/integration/src/main/java/org/apache/mahout/utils/clustering/ClusterDumper.java
Modified: mahout/trunk/integration/src/main/java/org/apache/mahout/utils/clustering/ClusterDumper.java
URL: http://svn.apache.org/viewvc/mahout/trunk/integration/src/main/java/org/apache/mahout/utils/clustering/ClusterDumper.java?rev=1183613&r1=1183612&r2=1183613&view=diff
==============================================================================
--- mahout/trunk/integration/src/main/java/org/apache/mahout/utils/clustering/ClusterDumper.java (original)
+++ mahout/trunk/integration/src/main/java/org/apache/mahout/utils/clustering/ClusterDumper.java Sat Oct 15 10:12:37 2011
@@ -22,6 +22,7 @@ import com.google.common.collect.Lists;
import com.google.common.io.Closeables;
import com.google.common.io.Files;
import org.apache.hadoop.conf.Configuration;
+import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path;
import org.apache.hadoop.io.IntWritable;
import org.apache.mahout.clustering.Cluster;
@@ -146,7 +147,13 @@ public final class ClusterDumper extends
writer = new OutputStreamWriter(System.out);
} else {
shouldClose = true;
- writer = Files.newWriter(new File(this.outputFile), Charsets.UTF_8);
+ if (outputFile.startsWith("s3n://")) {
+ Path p = new Path(this.outputFile);
+ FileSystem fs = FileSystem.get(p.toUri(), conf);
+ writer = new OutputStreamWriter(fs.create(p), Charsets.UTF_8);
+ } else {
+ writer = Files.newWriter(new File(this.outputFile), Charsets.UTF_8);
+ }
}
ClusterWriter clusterWriter = createClusterWriter(writer, dictionary);
try {