В течение последних двух недель я прочитал множество сообщений о переполнении стека, связанных с визуализацией базы данных Neo4j, но они не касаются моей проблемы. Я получаю идеи из одного поста, идеи из другого, но они не являются самосогласованными. Я также провел несколько поисков в Google, пытаясь понять, как визуализировать встроенную базу данных графов Neo4j, но безрезультатно.
Я написал действительно простой класс и метод Java, который создает простой граф (35узлы и 30 отношений). Первый фрагмент кода ниже показывает, что я создал базу данных встроенных графов. Второй фрагмент кода показывает, как я смог сделать запрос к базе данных после ее заполнения.
Мне удалось запросить график в коде Java и подтвердить правильность узлов и отношений. Что я хотел бы сделать, так это визуализировать этот простой график, прежде чем перейти к реальному набору данных, который имеет гораздо больше узлов и связей.
Я занимаюсь разработкой и тестированием кода на iMac под управлением macOS 10.15 (Каталина), JetBrains IntelliJ IDE, JDK 1.8.0_221. Как только я получу этот код на своем iMac, я планирую перенести его в среду GCP, чтобы запустить его в масштабе. Мне нужно будет со временем создавать визуализации базы данных, поэтому интенсивная визуализация вручную нежелательна. Поэтому я хочу избежать визуализации графической базы данных с помощью браузера Neo4j Desktop.
Я попытался внедрить встроенную графическую базу данных в Gephi (предпочтительный подход) с помощью плагина Neo4j. Когда я выбрал папку базы данных графа и щелкнул на open, Gephi ответил пустым диалоговым окном под названием предупреждение. Я уверен, что сделал что-то не так, но я не знаю, что я сделал или не сделал правильно.
Создание базы данных Embedded Graph
gdbFactory = new GraphDatabaseFactory();
gdbService = gdbFactory.newEmbeddedDatabase(new File(gdbDirectory));
try (Transaction databaseTransaction = gdbService.beginTx())
{
...database commands...
databaseTransaction.success();
}
gdbService.shutdown();
Запрос Embedded GraphБаза данных
try (Transaction databaseTransaction = BaselineGitHubToGraphDb.gdbService.beginTx())
{
Result queryResult = BaselineGitHubToGraphDb.gdbService.execute(queryString);
while (queryResult.hasNext())
{
Map<String, Object> row = queryResult.next();
for (Map.Entry<String, Object> column : row.entrySet())
{
linesOfText += column.getKey() + ": " + column.getValue() + "; ";
}
linesOfText += "\n";
}
System.out.printf("\t%s\n",
linesOfText);
databaseTransaction.success();
}
То, что я хотел бы сделать, - это создать графическое представление базы данных графа, чтобы проверить логику кода Java, который создает узлы, отношения и связанные свойства. Я хотел бы сделать это с этим небольшим набором данных, а затем набором данных примерно в 10 раз больше, прежде чем перемещать код в среду GCP, чтобы протестировать его в масштабе и заставить его там работать.
Можете ли вы поделиться илиукажите мне какой-нибудь Java-код, который позволит мне визуализировать встроенную базу данных Neo4j, используя Gephi или другие средства, если это уместно?
Заранее благодарен за помощь в этом вопросе.