当前位置:  开发笔记 > 编程语言 > 正文

MongoDB或CouchDB - 适合生产?

如何解决《MongoDB或CouchDB-适合生产?》经验,为你挑选了10个好方法。

我想知道是否有人可以告诉我MongoDBCouchDB是否已为生产环境做好准备.

我现在正在研究这些存储解决方案(我现在偏爱MongoDB),但是这些项目还很年轻,所以我预计我必须努力工作才能说服我的经理我们应该采用这个新技术.

我想知道的是:

    谁今天在生产环境中使用MongoDB或CouchDB?

    你是如何使用MongoDB/CouchDB的?

    当你采用这种新的存储机制时,你遇到了什么问题(如果有的话)(你是如何克服它们的)?

    您是如何处理您必须处理的任何迁移问题的?

    您是否对这些您想要分享的解决方案有任何好/坏经历?

小智.. 269

我是10gen的CTO(MongoDB的开发人员),所以我有点偏颇,但我也管理了一些在生产中使用MongoDB的网站.

businessinsider现在已经在生产中使用mongo超过一年了.他们将其用于从用户和博客帖子到网站上的每个图像的所有内容.

shopwiki正在将它用于一些事情,包括实时分析和缓存层.他们每秒对一个相当大的数据库进行超过1000次写入.

如果你进入mongodb生产部署页面,你会看到一些在生产中使用mongo的人.

如果您对生产部署的规模或范围有任何疑问,请在我们的用户列表中发布,我们非常乐意为您提供帮助.



1> 小智..:

我是10gen的CTO(MongoDB的开发人员),所以我有点偏颇,但我也管理了一些在生产中使用MongoDB的网站.

businessinsider现在已经在生产中使用mongo超过一年了.他们将其用于从用户和博客帖子到网站上的每个图像的所有内容.

shopwiki正在将它用于一些事情,包括实时分析和缓存层.他们每秒对一个相当大的数据库进行超过1000次写入.

如果你进入mongodb生产部署页面,你会看到一些在生产中使用mongo的人.

如果您对生产部署的规模或范围有任何疑问,请在我们的用户列表中发布,我们非常乐意为您提供帮助.


这里是链接http://www.mongodb.org/display/DOCS/Production+Deployments

2> Matt Aimonet..:

在BBC和meebo.com使用CouchDB的生产也是如此我的一个客户.以下列出了其他使用Couch:CouchDB的人

主要的挑战是知道如何组织文档并停止思考关系数据.


实际上对我来说,如果你需要,主要的挑战是回归.一旦从脑海中删除"关系约束",就很难回头.:)

3> 小智..:

SourceForge使用MongoDB.请参阅此演示文稿或阅读此处.


他们用它做什么?或者他们如何使用它?
我知道这是一个老问题,但也许有人会再看一遍.以下是SourceForge开发者关于如何使用MongoDO的演示文稿:http://www.infoq.com/presentations/MongoDB-at-SourceForge

4> okurow..:

我们正在运行CouchDB作为我们商店的MySQL替代品(70.0000件商品/商店,所有商品共400万个属性,商品之间的交叉连接).

我们的目标是:

    从master-db轻松复制到具有不同文档的多个客户端.

    快速预先计算的数据,例如"我对此属性和过滤器有多少部分,适合这些条件"

事实:

    我们的商店现在运行速度比使用MySQL快得多(而mysql数据库需要额外的1-3天预计算(因此每月更新两次),使数据准备好进行产品计数和过滤,CouchDB需要5个小时,所以我们可以每晚更新产品数据)

    设置(过滤)数据分发和备份到商店节点非常快捷

但是也:

    理解map/reduce和没有连接的限制是相当困难的

    没有外部程序,无法对"删除位置"或"更新位置"等数据进行操作

    除非出现问题,否则复制效果很好; 然后很难找出原因是什么(适合初学者)

    如果你不是一个Linux极客,那么没有二进制文件的CouchDB的安装(是的,有一些在野外,但不适用于每个操作系统/版本)可能很难.但CouchDB社区很有帮助(#couchdb),幸运的是有些公司(cloudant,iriscouch)提供从免费到大型企业的服务.

    CouchDB正在向前发展,因此有很多变化(改进)可能会改变你的工作方式.但基本的东西保持稳定.

因此:MySQL作为数据创建和维护的数据库是可靠的,易于理解和处理.我想我们不会改变这一点.但我也不想错过CouchDB视图的强大功能和易复制设置.

由于配置错误和忘记了logrotates(查看构建需要太长时间或挂起,复制停止),生产沙发有时会在数月的工作后造成麻烦,但从不丢失数据,并且总是可以轻松重置.



5> Sergio Tulen..:

我在生产中使用CouchDB.目前,它存储了原始数据库模式中不存在的所有"可选"字段.现在我正考虑将所有数据移到CouchDB.

我承认,这是一个非常冒险的步骤.首先,因为它还不是v1.0.其次,因为它是驱动器空间的饥饿.通过我的计算,CouchDB文件(带索引)比具有相同行的MySQL数据库大约30倍.但我很确定它会很好.


@aetheria:回到mysql再到mongo.到处都有相当多的问题.:)

6> J Chris A..:

CouchDB 0.11(3月底发布)是1.0的功能冻结版本.这意味着我们将保持与1.0的当前API的兼容性,所以现在是时候再看看CouchDB,如果你还没有.

该CouchDB的0.11源代码版本可以在这里找到.这里有二进制安装程序和其他好东西.



7> Sasha Chedyg..:

我对MongoDB一无所知,但是从CouchDB常见问题解答:

CouchDB是否已准备好投入生产?

是的,请参阅InTheWild获取使用CouchDB的部分项目列表.另一个很好的概述是CouchDB案例研究

还有一些链接:

Re:当前的CouchDB状态?

SimpleDB,CouchDB和其他"新"数据存储 - 反馈


@J克里斯 - 答:当然它已经过去了,我在一年半前发布了这篇文章.:)

8> clintm..:

我们在生产中使用couchdb,并且在项目进入Apache保护伞之前.

我们使用它来存储我们可能使用dbms的所有内容,以及各种非结构化数据.就个人而言,我真的很喜欢你可以把各种数据扔进去,并根据情况使用视图来剔除你不需要的东西.

最困难的部分是远离dbms思维模式.当存储格式改变为安全时,我们编写了自己的迁移工具,因此这不是一个真正的问题.

我们还没有任何负面的经历,但是我们又没有在任何巨大的负载下进行设置.我认为事情会很好,因为我们有两个从一个主服务器复制的从属类型服务器可以获得所有的写入.我很确定我们不必这样做,以便复制正常工作,但这是我们在开始时设置它并且它卡住的方式.



9> Ryan Duffiel..:

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



10> Joshua Burns..:

我们目前正在生产中使用MongoDB作为缓存层以及用于产品导入和操作产品数据的存储引擎.我们是一家电子商务公司,管理着超过200万种产品(超过1亿属性),跨越10多个分销商而没有MongoDB,这项任务几乎是不可能完成的.


我们实现了运行1.6的副本集拓扑.(不确定副手版本是什么).到目前为止,我们遇到的唯一问题显然是当磁盘空间不足时,即使启用了保存写入,也不会引发任何标志.所以只要确保你有足够的空间!
mongoDB被证明对您有多可靠?+复制在现实生活中的表现如何?
推荐阅读
mobiledu2402852357
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有