这两个图数据库有什么区别:Neo4j 和 AllegroGraph?哪个更适合 Java Web 编程?
5 回答
另一个考虑因素是许可证。只要您的三元组少于 5000 万,就可以使用 AllegroGraph 的免费版。见http://www.franz.com/agraph/allegrograph/ag_commercial_edition.lhtml
只要您的项目使用社区版,Neo4j 是免费的;仅当您修改 Neo4j 源时,您必须开源修改。基本许可条款可以在他们的主页上找到:http: //neo4j.org/
我选择 AllegroGraph 而不是 Neo4j,因为它支持 SPARQL 查询。在我看来,遍历图的 Neo4j 方法不太整洁,尤其是对于更复杂的检索操作。
...不,我与任何一个组织都没有隶属关系。
AllegroGraph 有一个 java 客户端库,它支持 2 个标准的 java 语义 API:Jena 和 Sesame。客户端源码是github上的EPL。AG 支持 sparql、事务、推理、地理空间、时间和图形分析。没有专门针对 Web 应用程序的额外功能,但它可以作为库适合任何框架。
(我为弗朗茨工作。)
除了 SPARQL,AllegoGraph 还允许您编写 Prolog 规则和查询。对于复杂的查询逻辑,它比 SPARQL 更具表现力。
Java客户端教程中有一些例子:http ://www.franz.com/agraph/support/documentation/v4/java-tutorial/java-tutorial-40.html