6

这两个图数据库有什么区别:Neo4j 和 AllegroGraph?哪个更适合 Java Web 编程?

4

5 回答 5

8

如果您没有理由选择 RDF + SPARQL(这两个产品都支持),Neo4j 提供了一个干净的 Java API 来操作属性图(节点 + 关系 + 属性)。对于 Web 应用程序,我使用 Spring Framework 编写了一个示例,该示例也存在于一个简化版本中作为一个研讨会

免责声明:显然我是 Neo4j 团队的一员,我对 AllegroGraph 没有任何深入的了解。

于 2010-04-11T08:14:26.580 回答
6

另一个考虑因素是许可证。只要您的三元组少于 5000 万,就可以使用 AllegroGraph 的免费版。见http://www.franz.com/agraph/allegrograph/ag_commercial_edition.lhtml

只要您的项目使用社区版,Neo4j 是免费的;仅当您修改 Neo4j 源时,您必须开源修改。基本许可条款可以在他们的主页上找到:http: //neo4j.org/

于 2011-03-13T16:52:32.440 回答
6

我选择 AllegroGraph 而不是 Neo4j,因为它支持 SPARQL 查询。在我看来,遍历图的 Neo4j 方法不太整洁,尤其是对于更复杂的检索操作。

...不,我与任何一个组织都没有隶属关系。

于 2010-10-25T12:46:28.770 回答
5

AllegroGraph 有一个 java 客户端库,它支持 2 个标准的 java 语义 API:Jena 和 Sesame。客户端源码是github上的EPL。AG 支持 sparql、事务、推理、地理空间、时间和图形分析。没有专门针对 Web 应用程序的额外功能,但它可以作为库适合任何框架。

(我为弗朗茨工作。)

于 2010-09-13T22:12:06.777 回答
1

除了 SPARQL,AllegoGraph 还允许您编写 Prolog 规则和查询。对于复杂的查询逻辑,它比 SPARQL 更具表现力。

Java客户端教程中有一些例子:http ://www.franz.com/agraph/support/documentation/v4/java-tutorial/java-tutorial-40.html

于 2011-06-27T19:51:26.083 回答