[
https://issues.apache.org/jira/browse/TINKERPOP-1234?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15216099#comment-15216099
]
ASF GitHub Bot commented on TINKERPOP-1234:
-------------------------------------------
GitHub user okram opened a pull request:
https://github.com/apache/incubator-tinkerpop/pull/283
TINKERPOP-1234: program() step that takes arbitrary vertex programs
https://issues.apache.org/jira/browse/TINKERPOP-1234
We now have `GraphTraversal.program(VertexProgram)`. This allows users to
do things such as:
```
g.V().out("bought").in("bought").program(CollaborativeFilteringVertexProgram.build()....)
```
Behaves just like any other `VertexProgramStep` where:
```
g.V().pageRank() == g.V().program(PageRankVertexProgram...)
```
CHANGELOG
```
* Added `GraphTraversal.program(VertexProgram)` to allow arbitrary user
vertex programs in OLAP.
```
VOTE +1. @dkuppitz tested it with his use case as well.
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/apache/incubator-tinkerpop TINKERPOP-1234
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/incubator-tinkerpop/pull/283.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #283
----
commit f6d49626fd07182d01de440dbb5129b34dcdbbd7
Author: Marko A. Rodriguez <[email protected]>
Date: 2016-03-24T16:29:43Z
first stub of ProgramVertexProgramStep which is like TraversalMap in that
it VertexProgramStep that takes a Program.
commit cd143baff809e657b37768f04a327c05a962e254
Author: Marko A. Rodriguez <[email protected]>
Date: 2016-03-24T17:07:45Z
simplified ProgramVertexProgramStep and added ProgramTest and
GroovyProgramTest. Its crazy, it 'just works'.
commit 9521abfe1b39f5a78f7c6402d79d473e0edd130f
Author: Marko A. Rodriguez <[email protected]>
Date: 2016-03-24T17:31:02Z
Added graph as a binding in ScriptTraversal much like g. This ensures that
when a ScriptTraversal references the graph, its there as graphs are not
serializable. This problem emerged during GroovyProgramTest on Spark and Giraph.
commit d543f980693aa6b2d28442e5745bf8ff802034ed
Author: Marko A. Rodriguez <[email protected]>
Date: 2016-03-29T14:31:49Z
added hashCode() and toString() to ProgramVertexProgramStep.
----
> program() step that takes arbitrary vertex programs
> ---------------------------------------------------
>
> Key: TINKERPOP-1234
> URL: https://issues.apache.org/jira/browse/TINKERPOP-1234
> Project: TinkerPop
> Issue Type: Improvement
> Components: process
> Affects Versions: 3.2.0-incubating
> Reporter: Daniel Kuppitz
> Assignee: Marko A. Rodriguez
>
> In 3.2 VertexPrograms like {{PageRankVertexProgram}} will have a dedicated
> step that allows to do things like {{g.V().out().out().pageRank()}}. Would be
> nice to have a general step {{program()}}, so that we can do the same thing
> with any {{VertexProgam}}, e.g.
> {code}
> // pre-calculate "users who bought this, also bought" and create uwbt-edges
> for the top 100 results per vertex
> g.V().as("a").in("bought").out("bought").where(neq("a")).as("b").select("a","b").
>
> program(CollaborativeFilterVertexProgram.build().source("a").target("b").limit(100).edgeLabel("uwbt").weightProperty("weight").create())
> {code}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)