Does your mongoDB sharding+replication cluster have Raid?
Our cluster has 6 ssd.
Each ssd starts a mongod and then replication with the same disks on the other two servers.
Personal understanding of mongoDB is that high reliability of data is solved through mongo’s own replication.
The speed of reading and writing is solved by sharding.
If the disk is raid, it is a waste for mongo.
Simple answer:Official suggestionRAID10.
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.
How to understand? Although it is related to the actual stress situation, for software such as database, the bottleneck usually appears on the I/O first. Depending on rereading or rewriting, RAID0 (limited read speed) or RAID1 (limited write speed) has its own limitations, then RAID10 is the best choice.
Although Sharding and Replication also provide functions similar to RAID0 and RAID1, they are, after all, upper-layer implementations. Compared with lower-layer implementations such as RAID0/1, their performance is still lower, after all, there will be additional overhead such as network. The latter’s weakness is that it cannot scale horizontally by adding servers.
When possible, first realize vertical expansion through RAID10, which is the best choice for efficiency or reliability and complexity of maintenance. After all, what can be done by one machine, why should it be assigned to several machines? Only when a server cannot be satisfied due to cost and other reasons, it is necessary to consider horizontal expansion.