2014-10-10 51 views
34

我正在为项目寻找正确的图形数据库。我测试了Neo4j并非常喜欢它。但是,AGPL许可问题让我略微有点(you can read about it here)。经验OrientDB vs Neo4j

然后我发现一些文章声称OrientDB实际上要快得多。但他们并不是最新的。您可以找到它们herehere。它在Apache 2下获得许可,这很好。

所以我只是想问你的意见伟大的人的计算器。

  • 可扩展性是重要的,OrientDB声称自己是在那个更好(here
  • 许可应该是开放的
  • 我顶点/边缘的复杂模型,需要找关系长达3级深
  • OrientDB提供的文档图形的混合似乎是一种好处

感谢您的反馈!

+4

有人可以解释,为什么这是downvoted和人们投票结束这个问题?严重的问题,我做错了什么? – 2014-10-10 20:49:30

+2

我认为一般来说,SO格式用于提问和获得答案。人们经常会对吸引非常褒贬的回答的帖子进行低估,例如“你能推荐最好的X”还是“哪个更好,X或Y?” - 您的问题没有任何特定的数据集或与其相关的查询。如果你重新提出你的问题,问问哪些功能更好*针对你的问题*这将更容易回答这个问题,而不只是陈述意见“好吧,我更喜欢这个...” – FrobberOfBits 2014-10-10 20:53:54

+0

你应该使用Neo4j,我第一次尝试使用OrientDB但在其所谓的SQL有许多错误,但Neo4j解决了我所有的问题 – 2015-10-09 05:52:06

回答

26

注意:我在OrientDB团队,我的意见肯定是倾斜的。我也以一种非常随便的语气回答。

提出您的观点:

1)在集群部署的话题,目前它甚至不是一个比较。 Neo4j是主从复制,他们自己声称它通常只适用于单位数节点部署,并且整个图必须属于一台机器。 OrientDB具有完整的多主复制能力(每个节点都可以接受读写),能够分割数据,智能地使用集群分配数据并自动执行分布式查询和事务处理。我们的首席执行官最近做了一个优秀的网络研讨会,表明我们在这方面的设置:http://hazelcast.com/resources/orientdb-hazelcast-memory-distributed-graph-database/

2)Apache 2.0是我们的社区许可证,这是非常自由的。您甚至可以免费嵌入OrientDB社区版。 (A)GPL担心一些关闭的源代码会受到污染。这可能是也可能不是威胁,但有时很难确定。我们的社区许可证功能非常丰富,包括全分布式,多主复制和分片。

3)遍历关系是图形数据库的一个重点。所以无论是Neo4j还是OrientDB都适合你,在这里......你可以深入2000级,它仍然是高性能的。

4)文档图功能很棒,但你知道我会这么说。我们构建的产品是一个生产级系统,设计为一个完整的数据库,而不是用作RDBMS或其他数据存储的补充的侧面数据库。

我在这里强壮。但我有充分的理由。在过去的三周里,一家世界领先科技公司的一个完整的开发团队一直在测试OrientDB和Neo4j。对于他们非常苛刻的用例,由于各种原因,我们是更好的选择。钱不是问题,我们用我们的技术赢得了生意。

为了它的价值,我已经表明了我的偏见。根据我的经验,一旦与OrientDB合作,就不会有回头客。让我们知道你是否需要任何帮助!

+1

Hazelcast链接很棒。我们正在工作中转移到hazelcast,我正在努力让我们采用OrientDB。 – CodeShaman 2014-10-12 04:41:56

+2

@Greg McCarvell OrientDB几乎只有(扩展的)用于查询的SQL。它不适合甚至与RDBMS混淆,但将其用于与其设计的DBMS非常不同的DBMS有点不方便。查询语言使得OrientDB变得不那么平易近人,即使它被写为由于事先熟悉SQL而降低了学习曲线。由于图中的思想与表和连接中的思维不同,对于各种数据的建模也是如此,因此索引查询也应该是非常直观的。今天查询OrientDB并不直观。 – 2015-07-15 22:09:32

+1

mr @greg这里的问题在于,没有像稳定的驱动程序那样用于大多数用于web开发的语言,比如php和其他许多其他语言。 – 2015-09-26 14:56:28