You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hama.apache.org by tj...@apache.org on 2012/06/21 19:06:53 UTC
svn commit: r1352620 - in
/hama/trunk/graph/src/test/java/org/apache/hama/graph:
TestSubmitGraphJob.java example/PageRank.java
Author: tjungblut
Date: Thu Jun 21 17:06:52 2012
New Revision: 1352620
URL: http://svn.apache.org/viewvc?rev=1352620&view=rev
Log:
fixing sum errors
Modified:
hama/trunk/graph/src/test/java/org/apache/hama/graph/TestSubmitGraphJob.java
hama/trunk/graph/src/test/java/org/apache/hama/graph/example/PageRank.java
Modified: hama/trunk/graph/src/test/java/org/apache/hama/graph/TestSubmitGraphJob.java
URL: http://svn.apache.org/viewvc/hama/trunk/graph/src/test/java/org/apache/hama/graph/TestSubmitGraphJob.java?rev=1352620&r1=1352619&r2=1352620&view=diff
==============================================================================
--- hama/trunk/graph/src/test/java/org/apache/hama/graph/TestSubmitGraphJob.java (original)
+++ hama/trunk/graph/src/test/java/org/apache/hama/graph/TestSubmitGraphJob.java Thu Jun 21 17:06:52 2012
@@ -69,11 +69,8 @@ public class TestSubmitGraphJob extends
// set the defaults
bsp.setMaxIteration(30);
bsp.set("hama.pagerank.alpha", "0.85");
- // we need to include a vertex in its adjacency list,
- // otherwise the pagerank result has a constant loss
- bsp.set("hama.graph.self.ref", "true");
bsp.set("hama.graph.repair", "true");
- bsp.setAggregatorClass(AverageAggregator.class, SumAggregator.class);
+ bsp.setAggregatorClass(AverageAggregator.class, PageRank.DanglingNodeAggregator.class);
bsp.setVertexIDClass(Text.class);
bsp.setVertexValueClass(DoubleWritable.class);
Modified: hama/trunk/graph/src/test/java/org/apache/hama/graph/example/PageRank.java
URL: http://svn.apache.org/viewvc/hama/trunk/graph/src/test/java/org/apache/hama/graph/example/PageRank.java?rev=1352620&r1=1352619&r2=1352620&view=diff
==============================================================================
--- hama/trunk/graph/src/test/java/org/apache/hama/graph/example/PageRank.java (original)
+++ hama/trunk/graph/src/test/java/org/apache/hama/graph/example/PageRank.java Thu Jun 21 17:06:52 2012
@@ -25,6 +25,7 @@ import org.apache.hadoop.io.DoubleWritab
import org.apache.hadoop.io.LongWritable;
import org.apache.hadoop.io.NullWritable;
import org.apache.hadoop.io.Text;
+import org.apache.hama.graph.AbstractAggregator;
import org.apache.hama.graph.Edge;
import org.apache.hama.graph.Vertex;
import org.apache.hama.graph.VertexInputReader;
@@ -116,4 +117,29 @@ public class PageRank {
}
+ public static class DanglingNodeAggregator
+ extends
+ AbstractAggregator<DoubleWritable, Vertex<Text, NullWritable, DoubleWritable>> {
+
+ double danglingNodeSum;
+
+ @Override
+ public void aggregate(Vertex<Text, NullWritable, DoubleWritable> vertex,
+ DoubleWritable value) {
+ if (vertex != null) {
+ if (vertex.getEdges().size() == 0) {
+ danglingNodeSum += value.get();
+ }
+ } else {
+ danglingNodeSum += value.get();
+ }
+ }
+
+ @Override
+ public DoubleWritable getValue() {
+ return new DoubleWritable(danglingNodeSum);
+ }
+
+ }
+
}