我的项目需要图形数据库。我想在图上执行最短路径操作。我搜索谷歌,发现neo4j,InfoGrid和sones。我不确定哪一个表现最好。
Neo4j也坚持阅读查询的交易,所以我担心这会导致延迟。我想要高性能的图形数据库引擎。如果它也可以支持最短路径,那将是非常棒的。
答案 0 :(得分:6)
我同意@Reinderien,你应该对这些产品进行测试。但我还要在混合中添加OrientDB。在this comment中引用其作者:
我正在为OrientDB工作。这是一个NoSQL 混合文档图dbms与 图的特殊运算符 操作。主要区别在于 您可以使用SQL查询它 语言有一些扩展名,如:
select from People where friends TRAVERSE(1,7) (name = 'Ayende' and surname = 'Rahien')
这意味着让所有人都这样 和朋友有任何关系 你达到了第7级的分离。
根据其网站,表演看起来相当不错。值得一看。
答案 1 :(得分:2)
我认为你也可以在Flockdb注意。
答案 2 :(得分:1)
幸运的是,大多数人都有一个共同的界面:Blueprints。除此之外,还有很多技术,例如Gremlin语言和对图表的REST访问。访问Tinkerpop了解详情。
关于基准测试,有一个名为graphdb-bench的工作进展项目(总是由Tinkerpop提供),但AFAIK正在开发中。
答案 3 :(得分:0)
为什么不测试所有三个并为您的特定数据应用基准?否则,很难说哪一个会表现最快。
答案 4 :(得分:0)
从版本1.1开始,您可以在不使用Neo4j中的事务的情况下读取数据。如果你想要读取未提交的数据,你只能从同一个事务中做到这一点(显然首先需要一个事务)。有关交易的更多信息,请参见Neo4j wiki。
答案 5 :(得分:0)
我建议您看一下AgensGraph及其性能。 https://bitnine.net/agensgraph/
AgensGraph也支持“最短路径”,您可以轻松使用它。