亚马逊SSD支持的EC2上的MongoDB

时间:2013-11-29 08:21:32

标签: mongodb amazon-ec2 amazon ssd

我们目前在亚马逊的EC2实例上部署了mongodb分片群集。这些分片也是副本集。使用的实例使用的是配置了IOPS的EBS。

我们在一个集合中有大约3000万个文档。我们的查询计算与过滤器匹配的整个集合。我们在几乎所有可查询字段上都有索引。这导致RAM达到100%的使用率。我们的工作集超过了RAM的大小。我们认为查询响应缓慢是由于EBS速度慢导致我们考虑迁移到新的SSD支持的实例。

C3可用 http://aws.typepad.com/aws/2013/11/a-generation-of-ec2-instances-for-compute-intensive-workloads.html

I2即将推出 http://aws.typepad.com/aws/2013/11/coming-soon-the-i2-instance-type-high-io-performance-via-ssd.html

我们唯一担心的是SSD是短暂的,这意味着一旦实例停止,终止或失败,数据就会消失。我们怎么解决这个问题呢?我们如何自动化备份。迁移到SSD以提高查询性能是一个好主意吗?我们还需要设置分片群集吗?

1 个答案:

答案 0 :(得分:0)

使用临时磁盘是一种风险,但如果您正确地进行了复制设置,那么这应该不是一个大问题。我假设您已经设置了三节点副本集正确吗?您的配置服务器还有三个节点吗?

我可以从经验中谈到这一点,因为我所在的公司已经采用这种方式设置。为了帮助降低风险,我正在采用涉及隐藏副本的备份策略。通过此设置,我可以关闭隐藏的副本集和其中一个配置服务器(首先停止平衡)并获取数据文件的完整副本(副本和配置服务器)并拥有有效的备份。如果AWS在我的可用区域中出现故障,我仍然可以在S3上进行每日备份以从中恢复。

希望这有帮助。