为了账号安全,请及时绑定邮箱和手机立即绑定

mongo集群是否需要做raid?

mongo集群是否需要做raid?

Cats萌萌 2018-12-10 15:54:36
你们的mongoDB sharding+replication集群,是否做了Raid?我们的集群6块ssd。每一个ssd启动一个mongod,然后与另外两台服务器上的相同磁盘做成replication。个人对mongoDB理解就是数据高可靠性是通过mongo自身的replication 解决。读写速度是通过sharding解决。如果磁盘做raid,对于mongo是一种浪费。
查看完整描述

1 回答

?
慕桂英3389331

TA贡献2036条经验 获得超8个赞

简单的答案:官方建议是RAID10。

For optimal performance in terms of the storage layer, use disks
backed by RAID-10. RAID-5 and RAID-6 do not typically provide
sufficient performance to support a MongoDB deployment. Avoid RAID-0
with MongoDB deployments. While RAID-0 provides good write
performance, it also provides limited availability and can lead to
reduced performance on read operations, particularly when using
Amazon’s EBS volumes.

如何理解?虽然跟实际压力情况有关,但是对于数据库这样的软件来讲,瓶颈通常都会首先出现在I/O上面。取决于重读或是重写,RAID0(读速度有限)或RAID1(写速度有限)都有其自身的局限性,那么RAID10就是最好的选择。
Sharding和Replication虽然也提供类似于RAID0和RAID1的功能,但毕竟是上层实现,相对于RAID0/1这样底层实现而言性能还是要差一些,毕竟会有网络等额外开销。后者的弱点则是无法通过增加服务器达到水平扩展。
在可能的情况下,首先通过RAID10实现垂直扩展,无论对于效率或者可靠性以及维护的复杂程度,都是最佳选择。毕竟一台机器就可以搞定的事情,为什么要分到几台机器上?只有当一台服务器因为成本等原因无法满足时,才有必要考虑水平扩展。


查看完整回答
反对 回复 2018-12-10
  • 1 回答
  • 0 关注
  • 589 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信