2012-02-07 6 views
7

Какую графическую базу данных следует использовать при работе с несколькими тысячами узлов и несколькими тысячами отношений? Являются ли эти большие числа для любой базы данных или нет? Какая графовая база является самой быстрой при чтении (при условии, что все данные загружаются один раз в начале). Я посмотрел на neo4j и его инструмент визуализации. Смогу ли я иметь такой инструмент визуализации в своем приложении?Какая графическая база данных

ответ

12

Вопросы, которые вам нужны для запроса и ответа для базы данных графа, аналогичны любой другой базе данных. Сколько данных? В памяти или постоянном? Как вы будете взаимодействовать с ним? Встроенный или серверный процесс? Распределенные или локализованные? Лицензирование?

Несколько тысяч узлов и связей являются небольшими для базы данных графа, и большинство решений по обработке графиков будут работать. Для большинства людей Neo4j - прекрасный выбор, но есть некоторые оговорки. Во-первых, лицензирование Neo4j может быть проблематичным во многих ситуациях. Во-вторых, визуализатор является частью процесса сервера Neo4j, что означает, что вы собираетесь запустить другой сервер. Если вы обеспокоены лицензированием, вы можете проверить OrientDB, который находится под лицензией Apache и, следовательно, очень гибкий.

Из-за этого звука у вас довольно небольшая система, и вы можете получить с помощью TinkerGraph, базу данных графа памяти от Марко Родригеса и хакеров Tinkerpop. Он имеет возможность сохранять ваши данные в файле, если это необходимо, является удивительно легким и, подобно Neo4j и OrientDB, поддерживает все инструменты графика из стека Tinkerpop, включая Jung Ouplemntation, который может дать вам визуализацию, которую вы желаете.

+1

Ребята, мы изучаем более гибкое лицензирование при запуске, свяжитесь со мной (я являюсь частью команды Neo4j), если вам нужно пройти Neo4j. Кроме того, Tinkerpop включен и совместим с Neo4j, а визуализатор в компоненте сервера Neo4j - это стандартная визуализация на основе Arbor.js, которая работает против API REST и управляется потоками браузера (не в процессе работы с сервером). Для небольших графиков я думаю, что модель с памятью, подобная Tinkergraph, полностью прекрасна. –

+0

@Pridkett О лицензировании Neo4j: Я видел, что Neo4j поставляется с лицензиями GPL и AGPL. Какие проблемы приносит вам лицензия Apache? ... Я посмотрю на TinkerGraph. Объем данных, как я уже сказал, несколько тысяч узлов с небольшим количеством свойств и несколькими тысячами взаимосвязей. Это будет локализованный серверный процесс с интерфейсом веб-интерфейса. Я не знаю, будет ли это быть в памяти или настойчивым. Каковы плюсы и минусы? Должен ли размер db определить это? – user579674

+0

@PeterNeubauer Мне нужна помощь в решении, может ли neo4j делать то, что я имею в виду. Есть ли способ связаться с вами в частном порядке? Мои вопросы в основном связаны с тем, как начать работу с neo4j в качестве базы данных на веб-странице. – user579674

 Смежные вопросы

  • Нет связанных вопросов^_^