我一直在研究 tinkerpop gremlin 图,最近我可以用它执行很多事情,现在我在尝试处理数千个顶点和边的时候感到震惊,它需要大约一小时完成该过程,我如何将 parallelStream() 操作应用于以下部分:
for(String s : somelist){
String[] ss = s.split(",");
graphTraversal().addEdge(ss[0], ss[1]);
}
那个“somelist”包含每条边的源顶点和目标顶点的信息(~大小为 65,000)。
最佳答案
从技术上讲,TinkerGraph 对于写入来说并不是完全线程安全的。根据您加载的内容和加载方式,您可能会遇到一些问题。我不能确切地说出这些问题是什么以及您可能需要做些什么来避免它们,但我们绝对没有以这种方式测试 TinkerGraph。
也就是说,即使在单线程操作模式下,按照您在示例代码中指定的格式加载 65,000 条边也不应该花一个小时加载到 TinkerGraph 中。这听起来有点过分。我假设您的示例代码不是您实际执行的代码,因为它不是有效的 Gremlin 语法,因此很难说出问题所在。
关于java - 如何使用多线程创建 gremlin 边,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51098520/