С помощью neo4j Cypher я могу найти отключенные группы узлов с максимальным диаметром группы 3 - PullRequest
0 голосов
/ 17 мая 2018

В neo4j у меня есть граф с отключенными группами (т.е. узлами одна группа не имеет ссылок ни на какие узлы в другой группе).

Большинство узлов в сборке составляют одну большую группу с множеством ссылок и большой диаметр группы . (Как диаметр группы я описываю график диаметр из группа как отдельный график.) Однако я знаю, что есть несколько других группы узлов в общем графе с диаметром группы всего 3 .

Вот визуализация примера сети:

Graph with disconnected groups

Этот график имеет большую группу (синим цветом) диаметром 11 и две маленькие группы (зеленым цветом) диаметром 3.

Как найти эти меньшие группы с помощью запроса Cypher?

1 Ответ

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

Чтобы найти эти кластеры, это тяжелая операция ...

Для каждого узла вам необходимо:

  • поиск, если существует путь длиной 4
  • если его не существует, сделать обход графика с максимальной глубиной 3.

С этим вы найдете кластер для каждого узла.

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...