我正在使用 JanusGraph 将顶点添加到 cassandra 支持的数据库中,我注意到在添加顶点时存在很大的性能差异(1)JanusGraph java 库提供的 addVertex() 方法 vs (2) addV( ) gremlin 遍历函数。为什么会有这样的差异?
我使用JanusGraph版本0.2.0与cql作为存储后端。我创建了一个测试,该测试使用三种方法比较将顶点添加和提交到图形所需的时间(以毫秒为单位):(1)addV()gremlin 函数,(2)addV()gremlin 函数,然后执行一个next()步骤来获取新创建的顶点,以及(3 ) JanusGraphaddVertex()方法。我从一个完全空的图形存储开始。我使用的代码可以在下面找到。
final Builder builder = JanusGraphFactory.build()
.set("storage.backend", "cql")
.set("storage.hostname", Config.get(CommonConfig.cassandra_host));
final JanusGraph graph = builder.open();
long nowMillis = TimeUtils.nowMillis();
graph.traversal().addV("myLabel");
graph.traversal().tx().commit();
System.out.println("(1) - Add vertex traversal only took " + (TimeUtils.nowMillis() - nowMillis) + " millis");
nowMillis = TimeUtils.nowMillis();
graph.traversal().addV("myLabel").next();
graph.traversal().tx().commit();
System.out.println("(2) - Add vertex traversal and next took …Run Code Online (Sandbox Code Playgroud)