У меня есть проект Neo4j с 100k узлами и отношениями 5м.Моя проблема: алгоритм типа «кратчайший путь» занимает 2-4 мс, чтобы найти кратчайший путь.
MATCH p = shortestPath((p1:Person{nickname:"sievers_amara"})-
[:follows*..5]->(p2:Person{nickname:"burghardt_giulia"}))
WHERE p1 <> p2
RETURN p
Но мой алгоритм, чтобы выяснить, существует ли путь между 2 узлами, занимает около 200 мс ...найти кратчайший путь будет сложнее, чем выяснить, существует ли путь или нет ... Это мой код, чтобы узнать, существует ли путь:
MATCH p=(p1:Person{nickname:"sievers_amara"})-[r:follows*1..5]->(p2:Person{nickname:"burghardt_giulia"})
WHERE p1 <> p2
RETURN p LIMIT 1
Что я могу улучшить?
Редактировать: Помещение PROFILE
перед моим запросом "есть ли путь" приводит к: ![enter image description here](https://i.stack.imgur.com/GoYTF.png)