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)

Reply via email to