You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tinkerpop.apache.org by ok...@apache.org on 2015/02/19 21:02:43 UTC

[1/6] incubator-tinkerpop git commit: registered custom M/R implementation for MeanGlobalStep

Repository: incubator-tinkerpop
Updated Branches:
  refs/heads/master 0d4f1d936 -> 863438f7b


registered custom M/R implementation for MeanGlobalStep


Project: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/commit/989c798d
Tree: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/tree/989c798d
Diff: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/diff/989c798d

Branch: refs/heads/master
Commit: 989c798d33864af5811f0d08b8e6d5b30a71385e
Parents: 9f51f8f
Author: Daniel Kuppitz <da...@hotmail.com>
Authored: Thu Feb 19 19:15:07 2015 +0100
Committer: Daniel Kuppitz <da...@hotmail.com>
Committed: Thu Feb 19 19:15:07 2015 +0100

----------------------------------------------------------------------
 .../process/graph/traversal/step/map/MeanGlobalStep.java        | 5 +++++
 1 file changed, 5 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/989c798d/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/graph/traversal/step/map/MeanGlobalStep.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/graph/traversal/step/map/MeanGlobalStep.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/graph/traversal/step/map/MeanGlobalStep.java
index 887bd51..c4bbea6 100644
--- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/graph/traversal/step/map/MeanGlobalStep.java
+++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/graph/traversal/step/map/MeanGlobalStep.java
@@ -56,6 +56,11 @@ public final class MeanGlobalStep<S extends Number, E extends Number> extends Re
         return REQUIREMENTS;
     }
 
+    @Override
+    public MapReduce<MapReduce.NullObject, MeanNumber, MapReduce.NullObject, MeanNumber, Double> getMapReduce() {
+        return MeanMapReduce.instance();
+    }
+
     /////
 
     private static class MeanBiFunction<S extends Number> implements BiFunction<S, Traverser<S>, S>, Serializable {


[6/6] incubator-tinkerpop git commit: Merge branch 'mean' of https://github.com/dkuppitz/incubator-tinkerpop

Posted by ok...@apache.org.
Merge branch 'mean' of https://github.com/dkuppitz/incubator-tinkerpop


Project: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/commit/863438f7
Tree: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/tree/863438f7
Diff: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/diff/863438f7

Branch: refs/heads/master
Commit: 863438f7bc7b6dba1ab3978d874470b2ce98c95c
Parents: 0d4f1d9 c3f6440
Author: Marko A. Rodriguez <ok...@gmail.com>
Authored: Thu Feb 19 13:02:33 2015 -0700
Committer: Marko A. Rodriguez <ok...@gmail.com>
Committed: Thu Feb 19 13:02:33 2015 -0700

----------------------------------------------------------------------
 .../traversal/step/map/MeanGlobalStep.java      | 34 +++++++++++++-------
 1 file changed, 23 insertions(+), 11 deletions(-)
----------------------------------------------------------------------



[2/6] incubator-tinkerpop git commit: Merge remote-tracking branch 'upstream/master'

Posted by ok...@apache.org.
Merge remote-tracking branch 'upstream/master'


Project: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/commit/05ceab84
Tree: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/tree/05ceab84
Diff: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/diff/05ceab84

Branch: refs/heads/master
Commit: 05ceab84e58a18d3bc644e69c5194cdb25eec8d4
Parents: 989c798 5440f49
Author: Daniel Kuppitz <da...@hotmail.com>
Authored: Thu Feb 19 19:17:11 2015 +0100
Committer: Daniel Kuppitz <da...@hotmail.com>
Committed: Thu Feb 19 19:17:11 2015 +0100

----------------------------------------------------------------------
 CHANGELOG.asciidoc                              |   1 +
 .../graph/traversal/ElementTraversal.java       |   4 +-
 .../process/graph/traversal/GraphTraversal.java | 124 +++++++++++--
 .../gremlin/process/graph/traversal/__.java     |   4 +-
 .../traversal/step/map/GroupCountStep.java      | 164 ++++++++++++++++++
 .../traversal/step/map/MeanGlobalStep.java      |   2 +-
 .../sideEffect/GroupCountSideEffectStep.java    | 172 +++++++++++++++++++
 .../step/sideEffect/GroupCountStep.java         | 104 -----------
 .../mapreduce/GroupCountMapReduce.java          | 101 -----------
 .../step/util/ReducingBarrierStep.java          |   2 +-
 .../step/map/GroovyCoalesceTest.groovy          |   4 +-
 .../traversal/step/map/GroovySelectTest.groovy  |  16 +-
 .../graph/traversal/step/map/CoalesceTest.java  |   2 +-
 .../graph/traversal/step/map/SelectTest.java    |  20 +--
 .../process/traversal/CoreTraversalTest.java    |   2 +-
 15 files changed, 477 insertions(+), 245 deletions(-)
----------------------------------------------------------------------



[3/6] incubator-tinkerpop git commit: Merge remote-tracking branch 'upstream/master'

Posted by ok...@apache.org.
Merge remote-tracking branch 'upstream/master'


Project: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/commit/5b8300d7
Tree: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/tree/5b8300d7
Diff: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/diff/5b8300d7

Branch: refs/heads/master
Commit: 5b8300d7e9c09a8f6142d55846d51a2e1b391610
Parents: 05ceab8 37f9256
Author: Daniel Kuppitz <da...@hotmail.com>
Authored: Thu Feb 19 19:43:14 2015 +0100
Committer: Daniel Kuppitz <da...@hotmail.com>
Committed: Thu Feb 19 19:43:14 2015 +0100

----------------------------------------------------------------------
 .../gremlin/hadoop/groovy/plugin/HadoopGremlinPlugin.java | 10 ++++------
 1 file changed, 4 insertions(+), 6 deletions(-)
----------------------------------------------------------------------



[5/6] incubator-tinkerpop git commit: fix in mean number calculation

Posted by ok...@apache.org.
fix in mean number calculation


Project: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/commit/c3f64402
Tree: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/tree/c3f64402
Diff: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/diff/c3f64402

Branch: refs/heads/master
Commit: c3f64402c6eb5be9783878ba08852f45a6a129d1
Parents: bec7dc0
Author: Daniel Kuppitz <da...@hotmail.com>
Authored: Thu Feb 19 20:16:56 2015 +0100
Committer: Daniel Kuppitz <da...@hotmail.com>
Committed: Thu Feb 19 20:16:56 2015 +0100

----------------------------------------------------------------------
 .../gremlin/process/graph/traversal/step/map/MeanGlobalStep.java | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/c3f64402/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/graph/traversal/step/map/MeanGlobalStep.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/graph/traversal/step/map/MeanGlobalStep.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/graph/traversal/step/map/MeanGlobalStep.java
index e61cafd..e069b88 100644
--- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/graph/traversal/step/map/MeanGlobalStep.java
+++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/graph/traversal/step/map/MeanGlobalStep.java
@@ -125,11 +125,11 @@ public final class MeanGlobalStep<S extends Number, E extends Number> extends Re
         public Double generateFinalResult(final Iterator<KeyValue<Number, Long>> keyValues) {
             if (keyValues.hasNext()) {
                 KeyValue<Number, Long> pair = keyValues.next();
-                double result = pair.getKey().doubleValue();
+                double result = pair.getKey().doubleValue() * pair.getValue();
                 long counter = pair.getValue();
                 while (keyValues.hasNext()) {
                     pair = keyValues.next();
-                    result += pair.getKey().doubleValue();
+                    result += pair.getKey().doubleValue() * pair.getValue();
                     counter += pair.getValue();
                 }
                 return result / counter;


[4/6] incubator-tinkerpop git commit: fully distributed M/R for MeanGlobalStep

Posted by ok...@apache.org.
fully distributed M/R for MeanGlobalStep


Project: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/commit/bec7dc08
Tree: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/tree/bec7dc08
Diff: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/diff/bec7dc08

Branch: refs/heads/master
Commit: bec7dc080d409ab7884335224910a5c9e14ab734
Parents: 5b8300d
Author: Daniel Kuppitz <da...@hotmail.com>
Authored: Thu Feb 19 20:07:48 2015 +0100
Committer: Daniel Kuppitz <da...@hotmail.com>
Committed: Thu Feb 19 20:07:48 2015 +0100

----------------------------------------------------------------------
 .../traversal/step/map/MeanGlobalStep.java      | 34 +++++++++++++-------
 1 file changed, 23 insertions(+), 11 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/bec7dc08/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/graph/traversal/step/map/MeanGlobalStep.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/graph/traversal/step/map/MeanGlobalStep.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/graph/traversal/step/map/MeanGlobalStep.java
index 94c43f5..e61cafd 100644
--- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/graph/traversal/step/map/MeanGlobalStep.java
+++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/graph/traversal/step/map/MeanGlobalStep.java
@@ -40,6 +40,7 @@ import java.util.function.Supplier;
 
 /**
  * @author Marko A. Rodriguez (http://markorodriguez.com)
+ * @author Daniel Kuppitz (http://gremlin.guru)
  */
 public final class MeanGlobalStep<S extends Number, E extends Number> extends ReducingBarrierStep<S, E> implements MapReducer {
 
@@ -57,7 +58,7 @@ public final class MeanGlobalStep<S extends Number, E extends Number> extends Re
     }
 
     @Override
-    public MapReduce<MapReduce.NullObject, MeanNumber, MapReduce.NullObject, MeanNumber, Double> getMapReduce() {
+    public MapReduce<Number, Long, Number, Long, Double> getMapReduce() {
         return MeanMapReduce.instance();
     }
 
@@ -83,7 +84,7 @@ public final class MeanGlobalStep<S extends Number, E extends Number> extends Re
 
     ///////////
 
-    private static class MeanMapReduce extends StaticMapReduce<MapReduce.NullObject, MeanNumber, MapReduce.NullObject, MeanNumber, Double> {
+    private static final class MeanMapReduce extends StaticMapReduce<Number, Long, Number, Long, Double> {
 
         private static final MeanMapReduce INSTANCE = new MeanMapReduce();
 
@@ -97,22 +98,22 @@ public final class MeanGlobalStep<S extends Number, E extends Number> extends Re
         }
 
         @Override
-        public void map(final Vertex vertex, final MapEmitter<NullObject, MeanNumber> emitter) {
-            vertex.<TraverserSet<Number>>property(TraversalVertexProgram.HALTED_TRAVERSERS).ifPresent(traverserSet -> traverserSet.forEach(traverser -> emitter.emit(new MeanNumber(traverser.get().doubleValue(), traverser.bulk()))));
+        public void map(final Vertex vertex, final MapEmitter<Number, Long> emitter) {
+            vertex.<TraverserSet<Number>>property(TraversalVertexProgram.HALTED_TRAVERSERS).ifPresent(traverserSet -> traverserSet.forEach(traverser -> emitter.emit(traverser.get(), traverser.bulk())));
         }
 
         @Override
-        public void combine(final NullObject key, final Iterator<MeanNumber> values, final ReduceEmitter<NullObject, MeanNumber> emitter) {
+        public void combine(final Number key, final Iterator<Long> values, final ReduceEmitter<Number, Long> emitter) {
             this.reduce(key, values, emitter);
         }
 
         @Override
-        public void reduce(final NullObject key, final Iterator<MeanNumber> values, final ReduceEmitter<NullObject, MeanNumber> emitter) {
-            MeanNumber mean = new MeanNumber();
+        public void reduce(final Number key, final Iterator<Long> values, final ReduceEmitter<Number, Long> emitter) {
+            long counter = 0;
             while (values.hasNext()) {
-                mean.add(values.next());
+                counter = counter + values.next();
             }
-            emitter.emit(mean);
+            emitter.emit(key, counter);
         }
 
         @Override
@@ -121,8 +122,19 @@ public final class MeanGlobalStep<S extends Number, E extends Number> extends Re
         }
 
         @Override
-        public Double generateFinalResult(final Iterator<KeyValue<NullObject, MeanNumber>> keyValues) {
-            return keyValues.hasNext() ? keyValues.next().getValue().doubleValue() : Double.NaN;
+        public Double generateFinalResult(final Iterator<KeyValue<Number, Long>> keyValues) {
+            if (keyValues.hasNext()) {
+                KeyValue<Number, Long> pair = keyValues.next();
+                double result = pair.getKey().doubleValue();
+                long counter = pair.getValue();
+                while (keyValues.hasNext()) {
+                    pair = keyValues.next();
+                    result += pair.getKey().doubleValue();
+                    counter += pair.getValue();
+                }
+                return result / counter;
+            }
+            return Double.NaN;
         }
 
         public static final MeanMapReduce instance() {