2011-02-10 49 views
8

我想了解更多关于NoSQL的知识,因为我在Linux/PHP体系结构中构建了一个基于密钥的归档应用程序。任何人都可以解释主要解决方案(CouchDB/MongoDB /等)之间的差异,对每个解决方案的优缺点?链接会很棒,但我很难单独使用Google进行研究。NoSQL解决方案的比较(在某些情况下哪个更好?)

+0

您的问题是否需要解决方案有一个PHP接口,导致“php”标记与提供的答案无关。 – user327961 2011-09-26 18:02:31

回答

8

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

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

+0

我发现的一切都是随机的。我正在寻找每个人的普遍性,比如表格映射/比较 – wajiw 2011-02-10 19:39:07

+1

@wajiw:请参阅编辑这个答案。 – 2011-02-10 20:12:16

4

此链接多个数据库相对于他们的特点比较:

​​

0

有些博客发布了一个关于这个问题的视觉答案,大约一个月后,这个问题发布在stackoverflow上。

有趣的,因为它定位参考CAP定理不同的可用解决方案。

我只是补充说,Cassandra可以放在'P'的两侧,这取决于您是否总是使用法定值查询。

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

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

0

这里是MongoDB的,卡桑德拉,了Riak的比较,CouchBase 2.0,HBase的使用的ZooKeeper,Berkeley DB的第11G(java的埃德HA)和Oracle NoSQL的11克

笔者已经基本通过他们的所有单证去分布在HDFS并引述描述在以下5个类别的行为方面:

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

,然后为每个人提供短期行情。

看到:http://www.kammerath.co.uk/nosql-on-the-spot.html

0

我认为这是相关的也看各种解决方案的群集功能,因为对NoSQL的主要用例是向外扩展。以下是供应商提供的信息链接的简要概述:

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

http://aphyr.com/tags/Jepsen这个系列是优异的,如果你想看到很多的数据库如何处理网络问题:

我们要了解分布式共识,讨论CAP定理的影响,并展示分区下不同的数据库的行为。

相关问题