Какую графовую базу данных следует использовать при работе с парой тысяч узлов и парой тысяч отношений? Это большие числа для любой базы данных или нет? Какая база данных графа является самой быстрой при операциях чтения (при условии, что все данные загружаются один раз в начале). Я посмотрел на neo4j и его инструмент визуализации. Смогу ли я иметь такой инструмент визуализации в своем приложении?
Какая база данных графа
Ответы (1)
Вопросы, которые вам нужно будет задать и ответить для базы данных графа, аналогичны любой другой базе данных. Сколько данных? В памяти или постоянно? Как вы будете с ним взаимодействовать? Встроенный или серверный процесс? Распространяется или локализуется? Лицензирование?
Пара тысяч узлов и взаимосвязей — это мало для графовой базы данных, и почти любое решение графовой базы данных будет работать. Для большинства людей Neo4j — хороший выбор, но есть некоторые оговорки. Во-первых, лицензирование Neo4j может быть проблематичным во многих ситуациях. Во-вторых, визуализатор является частью серверного процесса Neo4j, а это значит, что у вас будет запущен еще один серверный процесс. Если вас беспокоит лицензирование, вы можете проверить OrientDB, которая находится под лицензией Apache, и таким образом очень гибкий.
Судя по всему, у вас довольно маленькая система, и вы можете обойтись с помощью TinkerGraph, базу данных графиков в памяти от Марко Родригеса и хакеров Tinkerpop. У него есть возможность сохранить ваши данные в файл, если это необходимо, он удивительно легкий и, как Neo4j и OrientDB, поддерживает все графические инструменты из стека Tinkerpop, включая Jung Ouplemntation, который может дать вам желаемую визуализацию.