Class GraphComputerTest.MapReduceBB
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.apache.tinkerpop.gremlin.process.computer.MapReduce
MapReduce.MapEmitter<K,V>, MapReduce.NullObject, MapReduce.ReduceEmitter<OK,OV>, MapReduce.Stage
-
-
Field Summary
-
Fields inherited from interface org.apache.tinkerpop.gremlin.process.computer.MapReduce
MAP_REDUCE
-
-
Constructor Summary
Constructors Constructor Description MapReduceBB()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
doStage(MapReduce.Stage stage)
A MapReduce job can be map-only, map-reduce-only, or map-combine-reduce.List<Integer>
generateFinalResult(Iterator<KeyValue<Integer,Integer>> keyValues)
The key/value pairs emitted by reduce() (or map() in a map-only job) can be iterated to generate a local JVM Java object.Optional<Comparator<Integer>>
getMapKeySort()
If aComparator
is provided, then all pairs leaving theMapReduce.MapEmitter
are sorted.String
getMemoryKey()
The results of the MapReduce job are associated with a memory-key to ultimately be stored inMemory
.void
map(Vertex vertex, MapReduce.MapEmitter<Integer,Integer> emitter)
The map() method is logically executed at all vertices in the graph in parallel.-
Methods inherited from class org.apache.tinkerpop.gremlin.process.computer.util.StaticMapReduce
clone, equals, hashCode, storeState, toString
-
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.apache.tinkerpop.gremlin.process.computer.MapReduce
addResultToMemory, combine, getReduceKeySort, loadState, reduce, workerEnd, workerStart
-
-
-
-
Method Detail
-
doStage
public boolean doStage(MapReduce.Stage stage)
Description copied from interface:MapReduce
A MapReduce job can be map-only, map-reduce-only, or map-combine-reduce. Before executing the particular stage, this method is called to determine if the respective stage is defined. This method should return true if the respective stage as a non-default method implementation.- Parameters:
stage
- the stage to check for definition.- Returns:
- whether that stage should be executed.
-
map
public void map(Vertex vertex, MapReduce.MapEmitter<Integer,Integer> emitter)
Description copied from interface:MapReduce
The map() method is logically executed at all vertices in the graph in parallel. The map() method emits key/value pairs given some analysis of the data in the vertices (and/or its incident edges). AllMapReduce
classes must at least provide an implementation ofMapReduce#map(Vertex, MapEmitter)
.- Parameters:
vertex
- the current vertex being map() processed.emitter
- the component that allows for key/value pairs to be emitted to the next stage.
-
getMapKeySort
public Optional<Comparator<Integer>> getMapKeySort()
Description copied from interface:MapReduce
If aComparator
is provided, then all pairs leaving theMapReduce.MapEmitter
are sorted. The sorted results are either fed sorted to the combine/reduce-stage or as the final output. If sorting is not required, thenOptional.empty()
should be returned as sorting is computationally expensive. The default implementation returnsOptional.empty()
.- Returns:
- an
Optional
of a comparator for sorting the map output.
-
getMemoryKey
public String getMemoryKey()
Description copied from interface:MapReduce
The results of the MapReduce job are associated with a memory-key to ultimately be stored inMemory
.- Returns:
- the memory key of the generated result object.
-
generateFinalResult
public List<Integer> generateFinalResult(Iterator<KeyValue<Integer,Integer>> keyValues)
Description copied from interface:MapReduce
The key/value pairs emitted by reduce() (or map() in a map-only job) can be iterated to generate a local JVM Java object.- Parameters:
keyValues
- the key/value pairs that were emitted from reduce() (or map() in a map-only job)- Returns:
- the resultant object formed from the emitted key/values.
-
-