В чем разница между этими двумя базами данных графа: Neo4j и AllegroGraph? Что лучше для Java Web-программирования?Разница между базой графов: Neo4j & AllegroGraph
ответ
Если у вас нет причин выбирать RDF + SPARQL (поддержка обоих продуктов), Neo4j предоставляет чистый Java API для управления графиком свойств (узлы + отношения + свойства для обоих). Для веб-приложений я написал example с использованием Spring Framework, который также существует в упрощенной версии как workshop.
Отказ от ответственности: Очевидно, что я нахожусь в команде Neo4j, и у меня нет глубоких знаний относительно AllegroGraph.
AllegroGraph имеет клиентскую библиотеку java, которая поддерживает 2 стандартных Java-семантических API: Jena и Sesame. Источником клиента является EPL на github. AG поддерживает sparql, транзакции, рассуждения, геопространственный, временный и графический анализ. Дополнительные функции специально для веб-приложений отсутствуют, но они будут вписываться в любую инфраструктуру в виде библиотеки.
(я работаю для Franz.)
Я выбрал AllegroGraph над Neo4j из-за его поддержки запросов SPARQL. Мне казалось, что подход Neo4j, проходящий по графику, менее опрятен, особенно для более сложных операций поиска.
... и нет, у меня нет аффилиации ни с одной из организаций.
Еще одно соображение - лицензии. Бесплатная версия AllegroGraph может быть использована до тех пор, пока у вас будет менее 50 миллионов троек. См. http://www.franz.com/agraph/allegrograph/ag_commercial_edition.lhtml
Neo4j является бесплатным до тех пор, пока ваш проект использует издание сообщества; только если вы измените источник Neo4j, вы должны с открытым исходным кодом внести изменения. Основные условия лицензии можно найти на их домашней странице: http://neo4j.org/
Только что обнаруженный для проекта, который Neo4j может использоваться также в проектах с закрытым исходным кодом, если вы не закрываете исходные модификации для самого источника neo4j (например, MySQL и так далее ...) –
Не стесняйтесь редактировать это в моем ответе. –
Спасибо, я только что принял редактирование. –
В дополнение к SPARQL, AllegoGraph позволяет вам писать правила и запросы Prolog. Для сложной логики запросов она гораздо более выразительна, чем SPARQL.
Есть некоторые примеры в клиентском учебнике Java: http://www.franz.com/agraph/support/documentation/v4/java-tutorial/java-tutorial-40.html
Neo4j поддерживает RDF + SPARQL, а также. И BTW [Gremlin] (http://github.com/tinkerpop/gremlin) тоже. – nawroth
Это может быть, но не как основная функция. Недостаток домашней страницы для этого компонента говорит об уровне поддержки. http://components.neo4j.org/neo4j-rdf-sparql/ – David