Ran Magen created TINKERPOP3-694:
------------------------------------
Summary: Bulk loading in TP
Key: TINKERPOP3-694
URL: https://issues.apache.org/jira/browse/TINKERPOP3-694
Project: TinkerPop 3
Issue Type: Improvement
Components: process
Reporter: Ran Magen
Bulk loading can greatly increase performance in many backends, but there is no
way for vendors to implement bulk loading in the TP API.
As for how to do it, I was thinking a vendor could inherit from AddXStep, and
implement bulk loading, enabling something like this:
ArrayList<Object[]> vertices;
__.inject(vertices).as("x").addV("x")
Pros:
1. This seems like a standard approach to me, since vendors today batch up
queries this way
(https://github.com/thinkaurelius/titan/blob/titan09/titan-core/src/main/java/com/thinkaurelius/titan/graphdb/tinkerpop/optimize/TitanVertexStep.java#L72)
2. In contrast to the Graph.addVertex method (and the likes), using a
traversal enables taking advantage of other strategies, like EventStrategy, a
validation strategy, etc.
Cons:
1. I don't think the mutating steps currently work with "x" (I'm not sure how
you call this feature).
2. The steps are marked as final.
Cheers,
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)