Marko A. Rodriguez created TINKERPOP-1593:
---------------------------------------------
Summary: TraversalMatrix should be blown out to reduce the amount
of work to develop and OLAP engine
Key: TINKERPOP-1593
URL: https://issues.apache.org/jira/browse/TINKERPOP-1593
Project: TinkerPop
Issue Type: Improvement
Components: process
Affects Versions: 3.2.3
Reporter: Marko A. Rodriguez
I'm noticing that there is a lot of repeated code in {{GraphComputer}} and
{{GraphActors}}. Both processing engines rely on a mix of push-based and
pull-based semantics through the traversal. I believe we can fold alot of this
code into {{TraversalMatrix}}. In this way, {{TraversalMatrix}} will know how
to add traversers into their appropriate step. It will know how to fetch
barriers. It will know how to fast-forward into a traversal and pull from
there. In short, it will do all the complicated logic that we currently have in
{{TraversalVertexProgram}} (and {{TraversalActorProgram}}).
Here is what it should do:
* {{TraversalMatrix.addTraverser()}}
* {{TraversalMatrix.setSemantics()}}
* {{TraversalMatrix.nextTraverser()}}
* {{TraversalMatrix.nextBarrier()}}
...and moving forward.
* {{TraversalMatrix.setPartition()}}
The last will make it so that all an OLAP engine needs to do is add traversers
and what ever comes back, message pass. Super basic.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)