是否有NoSQL解决方案的比较(在某些情况下更好?)

时间:2011-02-10 19:12:01

标签: php mongodb couchdb nosql

我正在尝试更多地了解NoSQL,因为我正在Linux / PHP架构中构建基于密钥的归档应用程序。任何人都可以解释主要解决方案(CouchDB / MongoDB /等)之间的差异,以及每个解决方案的优缺点吗?链接会很棒,但我很难单独使用谷歌进行研究。

9 个答案:

答案 0 :(得分:8)

谷歌“nosql比较” - 真的有很多相关的博客和文档。

这是一个:http://kkovacs.eu/cassandra-vs-mongodb-vs-couchdb-vs-redis

答案 1 :(得分:4)

此链接会比较几个数据库的功能:

http://www.vineetgupta.com/category/databases/

答案 2 :(得分:3)

此链接包含有关nosql系统的一些信息。

<强> http://www.rackspacecloud.com/blog/2009/11/09/nosql-ecosystem/

答案 3 :(得分:1)

看看这个nosql比较引擎。 http://nosql.findthebest.com

答案 4 :(得分:1)

http://aphyr.com/tags/Jepsen如果您想了解许多数据库如何处理网络问题,那么本系列非常出色:

  

我们将学习分布式共识,讨论CAP定理的含义,并演示不同数据库在分区下的行为。

答案 5 :(得分:0)

在stackoverflow上发布此问题一个月后,一些博客发布了这个问题的直观答案。

有趣的是,因为它针对CAP定理定位了不同的可用解决方案。

我想补充一点,Cassandra可以放在'P'的两侧,这取决于你是否总是使用仲裁来查询。

http://blog.nahurst.com/visual-guide-to-nosql-systems

注意:作者任意将RDBMS和数据仓库解决方案放在三角形的CA端。我知道可用的非分区容忍是有争议的,但这不是重点。

答案 6 :(得分:0)

这里是MongoDB,Cassandra,Riak,CouchBase 2.0,使用ZooKeeper,Berkeley db 11g(Java Ed HA)和Oracle NoSQL 11g在HDFS上分发的HBase的比较

作者基本上已经完成了所有的文件,并在以下5个类别中引用了描述其行为的领域:

  • 内部分区
  • 自动灵活的数据分发
  • 热插拔节点
  • 复制式
  • 自动故障转移策略

然后为每个人提供简短的引用。

请参阅:http://www.kammerath.co.uk/nosql-on-the-spot.html

答案 7 :(得分:0)

我认为同样关注各种解决方案的集群功能也是至关重要的,因为NoSQL的一个主要用例正在扩展。以下是供应商提供的信息链接的简要概述:

  • Couchbase - 每个节点都带有一个集群管理器,没有中央集群协调组件。供应商表示,Couchbase服务器与添加到集群的每个节点呈线性关系。还有一个名为XDCR的功能,可以跨不同的地理位置进行复制。 CouchBase Cluster Overview
  • MongoDB - 提供一种分片架构,其中数据被分割为分片,有一个配置服务器将数据映射到分片,一个Mongo实例将数据传递给客户端应用程序(客户端不直接访问分片)。供应商指出,分片是一种非常复杂的操作。 MongoDB Cluster Overview
  • Redis开源 - 集群功能正在开发中,目前处于Alpha版本,将提供实时重新配置,容错和发布/订阅。供应商已宣布在集群模式下不支持某些Redis命令 - 复杂的多键操作设置类型联合或交叉,以及所有在同一节点中密钥不可用的操作。 Cluster Feature Specs
  • Redis Cloud(商业) - 具有工作群集功能的云服务。供应商表示,他们能够按需扩展,动态添加更多分片,并支持所有Redis操作。 Redis Cluster Overview
  • Riak - 内置集群,数据在Riak节点之间自动分区。可以动态地在集群中添加和删除节点,Riak将相应地重新分配数据。供应商表示,该产品的设计是分布式的,当添加更多节点时,读/写和map / reduce等核心操作实际上会变得更快。 Riak Cluster Overview

答案 8 :(得分:-1)

NoRAM DB => “If It Does Not Fit in RAM, I Will Quietly Die For You”

谈论Cassandra,Riak,Redis,MongoDB,Hazelcast,Neo4j,VoltDB,CouchDB等。