NoSql Battle - 幸存者?

时间:2010-12-07 01:19:43

标签: java database performance nosql scalability

GraphDB与Key-ValueDb的

Neo4j与OrientDB Valdemort与OrientKV

要选择和比较的功能

  • 易于安装(无依赖关系,只需放置/提取文件夹)
  • 性能和可扩展性
  • 占地面积小
  • 良好的文档(教程和示例)
  • 管理设施,监控工具
  • 低学习曲线
  • 与java或ruby的接口

获胜者是什么?

具有相同特征/功能的另一种选择?

4 个答案:

答案 0 :(得分:2)

文档数据库怎么样?我认为mongo是有史以来最伟大的事情

答案 1 :(得分:2)

我和史蒂夫一起。木偶赢了!实际上,我正在评估Neo4j和OrientDB。倾向于OrientDB,因为它的性能配置文件符合我的需要。

而不是看“bling”找出你的系统的读/写比率。它是读取还是写入,还是搜索更重要?一旦你想出来,那么选择就会变得更容易。

BTW Neo4j和OrientDB都有很好的文档和示例。所有最好的选择。

答案 2 :(得分:1)

这不是您正在寻找的赢家。根据我的经验,理想的数据库类型是最适合您应用的数据库。对于高级应用程序,您可能希望将对象绑定到数据库。所有人的最佳选择仍然是关系数据库,如SQL。它已经发展了20多年。各地的SQL都可以使用工具。 NoSql数据库还很年轻,工具很难找到。

我个人尝试使用Neo4j。我喜欢他们在Neo4j中使用的图形模型。它允许您向节点和关系添加属性。但是,查看图形或NoSQL数据库的工具并不像SQL表那样好。

对我来说,我发现纯文本文件或xml是我应用程序的大多数最佳数据库。

答案 3 :(得分:1)

我要说的最大区别是 - 可扩展性。截至目前,Neo4j不支持群集。但是你可以拥有主从复制。但是OrientDB支持集群。

每个节点的数据需要在Neo4j中存储为键值对。使用OrientDB,您可以将数据保存为文档,并且仍然可以具有图形关系。 OriendDB也支持ACID。