我想知道是否有人可以告诉我MongoDB或CouchDB是否已经为生产环境做好了准备。

我现在正在研究这些存储解决方案(目前我更喜欢MongoDB),但是这些项目还很年轻,所以我预见到我将不得不非常努力地说服我的经理,我们应该采用这种新技术。

我想知道的是:

现在谁在生产环境中使用MongoDB或CouchDB ? 你如何使用MongoDB/CouchDB? 当你采用这种新的存储机制时,你遇到了什么问题(如果有的话)(你是如何克服它们的)? 你是如何处理你不得不面对的移民问题的? 你有任何好的或坏的经验,这些解决方案,你想分享吗?


当前回答

MongoDB在授权给企业方面存在一些问题,我不确定细节,但我们的法律部门不明确地告诉我们,我们不允许在我们的任何产品中使用MongoDB。

其他回答

我在生产中使用CouchDB。目前它存储了所有不在原始DB模式中的“可选”字段。现在我正在考虑将所有数据转移到CouchDB。

我承认这一步很冒险。首先,因为它还不是1.0版本。其次,因为它需要大量的驾驶空间。根据我的计算,CouchDB文件(带索引)比具有相同行的MySQL数据库大30倍。 但我很确定它会好起来的。

就生产而言,无缝故障转移/恢复都需要一个保姆 1- Couchbase,没有无缝的故障转移/恢复,需要人工干预。重新平衡需要太多时间,如果丢失多个节点,风险也会很大。

2- Mongo与shards,数据恢复从松散的配置服务器,不是一个容易的任务

我们在生产中使用MongoDB的移动后端服务,即Netmera。我们使用它来存储所有用户和内容数据。

我们在生产中使用mongodb

www.beachfront.io -接近每秒5k的写请求 www.beachfrontbuilder.com -每秒500个读写请求,维护1000万用户数据和olap。

我们通过实现自定义组件克服了数据归档面临的唯一挑战。

我们使用CouchDB存储移动入站和出站消息,并通过我编写的一些自定义视图报告此流量。前端是用Python编写的。我们没有任何真正的技术问题,它自12月底以来一直在运行。我遇到的唯一障碍是最初从MapReduce的角度思考,但一旦我学会了如何做到这一点,其他一切都很顺利。