我想了解更多关于NoSQL的知识,因为我在Linux/PHP体系结构中构建了一个基于密钥的归档应用程序。任何人都可以解释主要解决方案(CouchDB/MongoDB /等)之间的差异,对每个解决方案的优缺点?链接会很棒,但我很难单独使用Google进行研究。NoSQL解决方案的比较(在某些情况下哪个更好?)
回答
谷歌“nosql比较” - 有真正吨相关的博客和文档。
这里是一个:http://kkovacs.eu/cassandra-vs-mongodb-vs-couchdb-vs-redis
我发现的一切都是随机的。我正在寻找每个人的普遍性,比如表格映射/比较 – wajiw 2011-02-10 19:39:07
@wajiw:请参阅编辑这个答案。 – 2011-02-10 20:12:16
此链接有关于NoSQL系统的一些信息。
http://www.rackspacecloud.com/blog/2009/11/09/nosql-ecosystem/
此链接多个数据库相对于他们的特点比较:
看看这个NoSQL的比较引擎。 http://nosql.findthebest.com
有些博客发布了一个关于这个问题的视觉答案,大约一个月后,这个问题发布在stackoverflow上。
有趣的,因为它定位参考CAP定理不同的可用解决方案。
我只是补充说,Cassandra可以放在'P'的两侧,这取决于您是否总是使用法定值查询。
http://blog.nahurst.com/visual-guide-to-nosql-systems
注:三角形的CA侧笔者随意放RDBMS和数据仓库解决方案。我知道可用的非分区容忍是有争议的,但这不是重点。
NoRAM DB => “If It Does Not Fit in RAM, I Will Quietly Die For You”
会谈约卡桑德拉,了Riak,Redis的,MongoDB中,Hazelcast,Neo4j的,VoltDB,CouchDB的,和其他人。
这里是MongoDB的,卡桑德拉,了Riak的比较,CouchBase 2.0,HBase的使用的ZooKeeper,Berkeley DB的第11G(java的埃德HA)和Oracle NoSQL的11克
笔者已经基本通过他们的所有单证去分布在HDFS并引述描述在以下5个类别的行为方面:
- 内部划分
- 自动灵活的数据分发
- 热插拔节点
- 复制式
- 自动故障切换策略
,然后为每个人提供短期行情。
我认为这是相关的也看各种解决方案的群集功能,因为对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
http://aphyr.com/tags/Jepsen这个系列是优异的,如果你想看到很多的数据库如何处理网络问题:
我们要了解分布式共识,讨论CAP定理的影响,并展示分区下不同的数据库的行为。
- 1. 哪个解决方案比oracle更好?
- 2. 在这种情况下哪个URL方案会更好?
- 3. 在哪些情况下使用定位会比浮动更好?
- 4. 哪些内存管理技术在哪些情况下更好?
- 5. 其他解决方案相比情况下
- 6. 在哪种情况下LFU比LRU好?
- 7. 更好的解决方案?
- 8. HDF vs NoSQL解决方案
- 9. 在哪些情况下它是有意义的有多个项目在一个解决方案?
- 10. 哪种解决方案把手发布/订阅方案更好?
- 11. 约会搜索网站的哪个NoSQL解决方案?
- 12. Autofac,IDisposable和手动调用。在某些情况下解决
- 13. BigData解决方案之间的比较。
- 14. 在某些情况下
- 15. 在某些情况下
- 16. System.Security.Cryptography.ProtectedData.Unprotect在某些情况下
- 17. 哪个MySQL的存储引擎会比较好在我的情况下
- 18. 一些好的解决方案
- 19. WCF或Normal BLL哪一个更好的解决方案?
- 20. PHP比每个循环更好的解决方案
- 21. 递归在这种情况下的最优解决方案?
- 22. 在Aspect中访问HttpServletRequest对象。哪一个更好的解决方案提到两个解决方案
- 23. 在某些情况下,异常流量控制是否更好?
- 24. AsyncTask TimeOut情况解决方案
- 25. 为什么在REST更好的情况下使用rest api? NoSQL
- 26. 在哪种情况下,C++/c#命名空间方法比Java方法更好?
- 27. 在哪些情况下使用正则表达式更好?
- 28. 比在模型中访问路线更好的解决方案?
- 29. Maven和Java版本设置 - 哪个解决方案更好?
- 30. 更好的解决方案比开关更改classNames
您的问题是否需要解决方案有一个PHP接口,导致“php”标记与提供的答案无关。 – user327961 2011-09-26 18:02:31