Как использовать многопоточность для создания края gremlin - PullRequest
0 голосов
/ 29 июня 2018

Я работал над графом гремлинов Tinkerpop, и в последнее время я могу выполнять с ним много всего, теперь я поражен одним моментом, когда пытаюсь обработать многие тысячи вершин и ребер, это занимает около один час, чтобы завершить процесс, как я могу применить параллель () операцию к этой следующей части:

for(String s : somelist){
  String[] ss = s.split(",");
  graphTraversal().addEdge(ss[0], ss[1]);
}

Этот «somelist» содержит информацию для исходных и целевых вершин каждого ребра (~ размер 65 000).

1 Ответ

0 голосов
/ 29 июня 2018

TinkerGraph технически не является полностью поточно-ориентированным для записи. Вы можете столкнуться с некоторыми проблемами в зависимости от того, что вы загружаете и как вы его загружаете. Я не могу точно сказать, что это за проблемы, и что вам может понадобиться, чтобы их избежать, но мы определенно не тестировали TinkerGraph таким образом.

При этом 65 000 ребер в формате, который вы указываете в своем примере кода, не должны занимать час для загрузки в TinkerGraph даже в однопоточном режиме работы. Это звучит немного чрезмерно. Я предполагаю, что ваш пример кода не тот, который вы на самом деле выполняете, так как это неверный синтаксис Gremlin, поэтому трудно сказать, в чем может быть проблема.

...