Class TinkerGraphComputer
- java.lang.Object
-
- org.apache.tinkerpop.gremlin.tinkergraph.process.computer.TinkerGraphComputer
-
- All Implemented Interfaces:
GraphComputer
public final class TinkerGraphComputer extends Object implements GraphComputer
- Author:
- Marko A. Rodriguez (http://markorodriguez.com), Stephen Mallette (http://stephen.genoprime.com)
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.apache.tinkerpop.gremlin.process.computer.GraphComputer
GraphComputer.Exceptions, GraphComputer.Features, GraphComputer.Persist, GraphComputer.ResultGraph
-
-
Constructor Summary
Constructors Constructor Description TinkerGraphComputer(AbstractTinkerGraph graph)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description GraphComputer
edges(Traversal<Vertex,Edge> edgeFilter)
Add a filter that will limit which edges of the vertices are loaded from the graph source.GraphComputer.Features
features()
GraphComputer
mapReduce(MapReduce mapReduce)
Add aMapReduce
job to the set of MapReduce jobs to be executed by theGraphComputer
.GraphComputer
persist(GraphComputer.Persist persist)
Set theGraphComputer.Persist
level of the computation.GraphComputer
program(VertexProgram vertexProgram)
Set theVertexProgram
to be executed by theGraphComputer
.GraphComputer
result(GraphComputer.ResultGraph resultGraph)
Set theGraphComputer.ResultGraph
of the computation.Future<ComputerResult>
submit()
String
toString()
GraphComputer
vertexProperties(Traversal<Vertex,? extends Property<?>> vertexPropertyFilter)
Add a filter that will limit which vertex properties are loaded from the graph source.GraphComputer
vertices(Traversal<Vertex,Vertex> vertexFilter)
Add a filter that will limit which vertices are loaded from the graph source.GraphComputer
workers(int workers)
Set the desired number of workers to execute theVertexProgram
andMapReduce
jobs.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.apache.tinkerpop.gremlin.process.computer.GraphComputer
configure
-
-
-
-
Constructor Detail
-
TinkerGraphComputer
public TinkerGraphComputer(AbstractTinkerGraph graph)
-
-
Method Detail
-
result
public GraphComputer result(GraphComputer.ResultGraph resultGraph)
Description copied from interface:GraphComputer
Set theGraphComputer.ResultGraph
of the computation. If this is not set explicitly by the user, then theVertexProgram
can choose the most efficient result for its intended use. If there is no declared vertex program, then theGraphComputer
defaults toGraphComputer.ResultGraph.ORIGINAL
.- Specified by:
result
in interfaceGraphComputer
- Parameters:
resultGraph
- the type of graph to be returned byComputerResult.graph()
- Returns:
- the updated GraphComputer with newly set result graph
-
persist
public GraphComputer persist(GraphComputer.Persist persist)
Description copied from interface:GraphComputer
Set theGraphComputer.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 theGraphComputer
defaults toGraphComputer.Persist.NOTHING
.- Specified by:
persist
in interfaceGraphComputer
- Parameters:
persist
- the persistence level of the resultant computation- Returns:
- the updated GraphComputer with newly set persist
-
program
public GraphComputer program(VertexProgram vertexProgram)
Description copied from interface:GraphComputer
Set theVertexProgram
to be executed by theGraphComputer
. There can only be one VertexProgram for the GraphComputer.- Specified by:
program
in interfaceGraphComputer
- Parameters:
vertexProgram
- the VertexProgram to be executed- Returns:
- the updated GraphComputer with newly set VertexProgram
-
mapReduce
public GraphComputer mapReduce(MapReduce mapReduce)
Description copied from interface:GraphComputer
Add aMapReduce
job to the set of MapReduce jobs to be executed by theGraphComputer
. There can be any number of MapReduce jobs.- Specified by:
mapReduce
in interfaceGraphComputer
- Parameters:
mapReduce
- the MapReduce job to add to the computation- Returns:
- the updated GraphComputer with newly added MapReduce job
-
workers
public GraphComputer workers(int workers)
Description copied from interface:GraphComputer
Set the desired number of workers to execute theVertexProgram
andMapReduce
jobs. This is a recommendation to the underlyingGraphComputer
implementation and is allowed to deviate accordingly by the implementation.- Specified by:
workers
in interfaceGraphComputer
- Parameters:
workers
- the number of workers to execute the submission- Returns:
- the updated GraphComputer with newly set worker count
-
vertices
public GraphComputer vertices(Traversal<Vertex,Vertex> vertexFilter)
Description copied from interface:GraphComputer
Add a filter that will limit which vertices are loaded from the graph source. The providedTraversal
can only check the vertex, its vertex properties, and the vertex property properties. The loaded graph will only have those vertices that pass through the provided filter.- Specified by:
vertices
in interfaceGraphComputer
- Parameters:
vertexFilter
- the traversal to verify whether or not to load the current vertex- Returns:
- the updated GraphComputer with newly set vertex filter
-
edges
public GraphComputer edges(Traversal<Vertex,Edge> edgeFilter)
Description copied from interface:GraphComputer
Add a filter that will limit which edges of the vertices are loaded from the graph source. The providedTraversal
can only check the local star graph of the vertex and thus, can not access properties/labels of the adjacent vertices. The vertices of the loaded graph will only have those edges that pass through the provided filter.- Specified by:
edges
in interfaceGraphComputer
- Parameters:
edgeFilter
- the traversal that determines which edges are loaded for each vertex- Returns:
- the updated GraphComputer with newly set edge filter
-
vertexProperties
public GraphComputer vertexProperties(Traversal<Vertex,? extends Property<?>> vertexPropertyFilter)
Description copied from interface:GraphComputer
Add a filter that will limit which vertex properties are loaded from the graph source. The loaded vertices will only have those properties that pass through the provided filter. To drop all vertex properties, provide a traversal like __.properties("dummy") where "dummy" is not a valid vertex property.- Specified by:
vertexProperties
in interfaceGraphComputer
- Parameters:
vertexPropertyFilter
- the traversal that determines which vertex properties are loaded for each vertex- Returns:
- the updated GraphComputer with newly set vertex property filter
-
submit
public Future<ComputerResult> submit()
Description copied from interface:GraphComputer
- Specified by:
submit
in interfaceGraphComputer
- Returns:
- a
Future
denoting a reference to the asynchronous computation and where to get theDefaultComputerResult
when its is complete.
-
features
public GraphComputer.Features features()
- Specified by:
features
in interfaceGraphComputer
-
-