2 Answers
Hi Rahuldjoshi,
There are LOTS of factors involved in RAID performance and even more when it comes to AWS since EBS is network-attached storage…something you normally don’t use with RAID. If you could include some more info about why you think the read performance would be the same, that might help. Here are my supporting ideas for the assertion that RAID0 has better read performance than RAID1…usually.
1) The Intuitive Perspective
It’s generally suggested that RAID0 is faster in both writes and reads….more so in writes because of the striping. But faster reads are usually seen because RAID0 is the sum of the bandwidth across the multiple devices where as RAID1 is limited to the bandwidth of any single device. When we’re network-attached like EBS, bandwidth is important.
2) The AWS Documentation
The below page has some good info on the "official" perspective of AWS on RAID. It indicates the bandwidth gain with RAID0 and the increased performance.
https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/raid-config.html
3) My Tests
I was curious on this too so I setup a little test. I spun up a T3.micro EBS-optimized and two 100G EBS SSD NVMe volumes. Setup software RAID using mdadm then used hdparm and dd to benchmark the reads and writes for the RAID volumes.
RAID0 Reads: 224 MB/sec
RAID1 Reads: 170 MB/sec
RAID0 Writes: 246 MB/sec
RAID1 Writes: 135 MB/sec
If you have any material or data to suggest otherwise, please add it to the conversation. Also, if you care to try an experiment of your own, I think it would be a good learning journey too.
–Scott
I thought AWS Does Support RAID 10 ? 1+0 doesn’t it?
Since the instructor did not mention RAID 10 as an option which seems to be the best of both worlds, I was also in the impression that you could use it in AWS now I’m not sure.
Anyone knows?
Thanks for the assistance.
Neo
bueller?? anyone, anyone? 🙂
I do not see it anymore in the documentation: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/raid-config.html , just RAID 0 and 1
Thanks Scott for your reply. Please correct me if I am wrong but when AWS EBS throttling for volume gets kicked in at that point RAID 1 will have less read performance compared to RAID 0 but if it is below provisioned IOPS there will be 2 devices in RAID 1 configuration from which it can read at the same time just like RAID 0 When AWS says " For example, two 500 GiB Amazon EBS io1 volumes with 4,000 provisioned IOPS each will create a 1000 GiB RAID 0 array with an available bandwidth of 8,000 IOPS and 1,000 MB/s of throughput or a 500 GiB RAID 1 array with an available bandwidth of 4,000 IOPS and 500 MB/s of throughput. " so when IOPS requirement is less than 4000 and 500 MB/s, do you get same read performance for RAID 0 and RAID1 ? Thanks Rahul
If you don’t need the performance and both RAID0 and RAID1 provide all the performance you need, then it doesn’t matter which one you pick. Your original question proposed that both were the same and they are not.
Well answered, Scott. Thanks