public interface GraphComputer
GraphComputer
is responsible for the execution of a VertexProgram
and then a set of MapReduce
jobs
over the vertices in the Graph
. It is up to the GraphComputer
implementation to determine the
appropriate memory structures given the computing substrate.Modifier and Type | Interface and Description |
---|---|
static class |
GraphComputer.Exceptions |
static interface |
GraphComputer.Features |
static class |
GraphComputer.Persist |
static class |
GraphComputer.ResultGraph |
Modifier and Type | Method and Description |
---|---|
default GraphComputer.Features |
features() |
GraphComputer |
mapReduce(MapReduce mapReduce)
Add a
MapReduce job to the set of MapReduce jobs to be executed by the GraphComputer . |
GraphComputer |
persist(GraphComputer.Persist persist)
Set the
GraphComputer.Persist level of the computation. |
GraphComputer |
program(VertexProgram vertexProgram)
Set the
VertexProgram to be executed by the GraphComputer . |
GraphComputer |
result(GraphComputer.ResultGraph resultGraph)
Set the
GraphComputer.ResultGraph of the computation. |
Future<ComputerResult> |
submit()
|
GraphComputer result(GraphComputer.ResultGraph resultGraph)
GraphComputer.ResultGraph
of the computation.
If this is not set explicitly by the user, then the VertexProgram
can choose the most efficient result for its intended use.
If there is no declared vertex program, then the GraphComputer
defaults to GraphComputer.ResultGraph.ORIGINAL
.resultGraph
- the type of graph to be returned by ComputerResult.graph()
GraphComputer persist(GraphComputer.Persist persist)
GraphComputer.Persist
level of the computation.
If this is not set explicitly by the user, then the VertexProgram
can choose the most efficient persist for the its intended use.
If there is no declared vertex program, then the GraphComputer
defaults to GraphComputer.Persist.NOTHING
.persist
- the persistence level of the resultant computationGraphComputer program(VertexProgram vertexProgram)
VertexProgram
to be executed by the GraphComputer
.
There can only be one VertexProgram for the GraphComputer.vertexProgram
- the VertexProgram to be executedGraphComputer mapReduce(MapReduce mapReduce)
MapReduce
job to the set of MapReduce jobs to be executed by the GraphComputer
.
There can be any number of MapReduce jobs.mapReduce
- the MapReduce job to add to the computationFuture<ComputerResult> submit()
Future
denoting a reference to the asynchronous computation and where to get the DefaultComputerResult
when its is complete.default GraphComputer.Features features()
Copyright © 2013–2015 Apache Software Foundation. All rights reserved.