什么是最好的云技术用于MongoDB / GridFS数据库服务器

我们将启动一项服务,每个付费用户需要1到2 GB的文件存储空间。 我将使用GridFS来存储文件。 GridFS是MongoDB的一个模块,允许将大文件存储在数据库中。

我正在思考存储数据库的不同选项。

但是由于我在部署方面没有经验,这是我第一次使用Mongodb,所以我需要你的经验。

标准:

  • 我想花时间发展我的核心业务,也就是我自己的应用程序。 我是Ruby on Rails开发人员。 我不喜欢弄乱服务器configuration。 因此,我想要一个完全托pipe的托pipe解决scheme。 但是我想知道任何其他的select,如果你认为这是值得的。
  • 它应该能够扩展。 云风格。 现收现付。
  • 价格越低越好。

到目前为止,我知道这些服务:

  • https://mongohq.com/pricing
  • https://mongomachine.com/pricing
  • https://mongolab.com/about/pricing/
  • http://cloudcontrol.com/add-ons/mongodb/

他们似乎可以满足一般需求,那就是没有文件存储。 但是我打算使用GridFS,所以尺寸很重要。 这些服务的价格似乎比较糟糕。

MongoHQ:更大的计划最大存储量是20 GB。 看起来像一个非常小的存储,GridFS。

MongoMachine:平价,每GB 2.5美元。 我没有find限制。 看起来像一个好价钱,比较其他人。

MongoLab:3.984 GB最大,我不认为我会击中,如此完美。 每GB 8美元,相当昂贵。

CloudControl:更大的计划是20 Gb。 自定义服务开始于250欧元,另加一些未指定的每GB的费用。

你对这些服务有什么经验? 任何停工? 其他可能性?

编辑:添加GridFS的含义

我认为你误读了MongoLab规范。 它有一个约3.9 GB的默认值 – 不是最大3984 GB! 这是美国的小数点,而不是千位分隔符(为什么美国人坚持这样做?)。 大计划的最大值为20 GB;)

更新:
我只是看了一下MongoHQ站点,发现一个有问题的人问他们的支持网站有趣的讨论 。 他们的回答是:

我们的限制是对大意义的软限制,一旦你超过20GB,我们不会削减你。 这是作为衡量工具来决定你是否适合共同的计划。

我们还提供专门的计划,并鼓励人们在数据变大时开始查看这些计划。 主要原因之一是查询一个数据库的大小,你将需要有效的索引,你将需要保留在内存中的一部分。 当你与其他数据库共享一台服务器时,你无法在内存中合理地保存很多数据库。 因此,将大型数据集的人员转移到专门的计划是最有利的。

如果你的数据还没有达到这个规模,那么从共享计划开始,并随着你的成长寻找专门的计划是有道理的。

http://support.mongohq.com/kb/plans/mongohq-dedicated-plans

我真的很努力地回答这个问题,所以我会解释它。

“什么是用于MongoDB / GridFS数据库服务器的最佳技术”

我可能会从一些存储节点开始,比如每个有4个300GB(或600GB)的SAS磁盘,快速的存储空间,将它们装入一个RAID 10(或者可能是RAID 6)arrays中,以实现冗余和速度的平衡。 确保你得到一个有BBWC(电池备份写caching)的好的RAID卡。 确保你在节点之间有良好的networking连接,这样你就可以在networking上获得不错的写入速度。

我不熟悉GridFS,但是如果我想要复制文件系统,我会直接去GlusterFS,并从这两个节点创build一个复制对。

我怀疑这可能不是问价格等的问题。

另外,如果您是开发人员,则build议您在合同/保留人员的基础上雇用/获取系统pipe理员一段时间,同时build立/运行基础架构。 特别是如果你想专注于商业build筑。

它应该能够扩展。 云风格。 现收现付。

这一点没有什么意义。 可伸缩性是一回事。 云是一个营销stream行语,PAYG,那完全是关于你的计费平台。

价格越低越好

降低价格给你,或者你的客户? 在系统工程中有句老话:“廉价,好还是快,select两个”。 你也许能够生产出一种对你来说便宜的系统,但是会为你的客户而被大肆宣传,而且他们会一窝蜂地离开。 注意这一点,特别是当你有竞争的时候,人们可以用脚投票。