【发布时间】:2010-12-06 20:27:42
【问题描述】:
我想了解更多有关可用于 Java 的 NoSQL 数据库/数据存储的信息,到目前为止,我尝试了 Project Voldemort。除了名字选得非常糟糕,目前看来还不错。
我想了解更多关于其他此类数据库系统的信息。现在,在wikipedia article 上有其中一些的列表,并且在他们的项目页面上有一些文档。
然而,与其比较作者提供的技术规格和教程,我想知道的是:
您在实际项目中使用这些库有什么经验?根据该经验,您会推荐使用哪一种,您不会推荐使用哪一种,为什么?
我知道只有实际使用过多个此类数据库的人才能够回答这个问题,但我希望有人这样做。
编辑:
我所说的“真实项目”主要是指生产中的项目(但如果没有这些项目,则适用于家庭作业或完成的教程)。
我使用了一个关系数据库,其中包含大量数据,其中大部分集中在一个表中,无论如何为了性能,该表都进行了非规范化。但是,由于约束等的混乱,创建一个可用的集群在稳定性和性能方面都表现出了可怕的结果。
现在,我很确定这些 NoSQL 系统中的任何一个都将是比我所拥有的更好的选择。但是,它们之间也必须有区别。无论是在文档、版本之间的稳定性、社区、易用性等等……而且还有很多巨头。选择哪个肩膀? :D
【问题讨论】:
-
说实话,我个人没有使用过 noSQL 数据库,但我的一个同事使用过MongoDB,并说他对它印象深刻。没有说具体原因,但它似乎很受欢迎,可能值得一试。
-
我发现这篇来自亚马逊的论文信息量很大:s3.amazonaws.com/AllThingsDistributed/sosp/…。在那之后,我寻找了一个与论文描述的相似的,并选择了 Cassandra。我欣赏它优雅的对称性。
-
你的项目有多“真实”?这个星球上最大的数据库没有使用 SQL:它们要么是“BigTables”(或类似的),要么是“键/值存储”。对我来说,这充分说明了 SQL 及其无法处理 真正 大型数据集 ;) 而且,不,人们不需要同时使用这两种方法:你需要做的就是站在巨人的肩膀。谷歌就是其中之一;)
-
感谢您的反馈和有用的材料。我更新了我的问题,使其更加具体。
-
正如 webinator 指出的那样,很少有真正的实现者同时使用过这两种方法或具有任何 nosql 经验。看看您是否可以在这里回答您的问题:nosql-database.org/links.html
标签: java comparison nosql