Monday, January 18, 2010

BAARF - Battle against any raid 5

BAARF - Battle Against any Raid Five

In the chart below, 1 represents good and 5 represents bad.
Raid 5 runs into read performance issues in a mixed workload because every write takes two reads plus a write. These two reads can conflict with other readers. Also because Raid 5 is typically configured with small stripe sizes, say 32K or 64K, to mitigate write penalties, a multiblock read can easily span several disks, increasing the chances of concurrency read conflicts.

1 comment:

  1. This is mainly for Oracle databases.
    For performance on Oracle, Raid 0+1 is the way to go.
    On the other hand if you don't care about performance then Raid 5 might be fine. Raid 5 performance might be fine you have a system that reads in small chunks and has few writes. Raid 5 might be fine if you don't care about hickups that can happen during a disk corruption, but for systems that need the fastest response time and guarenteed up time, striped then mirrored is better.
    RAID5 recovery can be slower than mirrored due to the need to remaster either data or parity, Raid 5 reads can conflict if the reads are much larger than the stripe size because span disks. Reads spanning disks can be a good thing, but if the stripe size is too small this can become a bad thing. For example, if your read size spans more slices than you have disks, you can even step on your own feat. Writes themselves on Raid 5 are slower and the writes can conflict with the readers more than on a non-parity solution because a raid 5 write has to read the data to be over written, read the parity, write the data and write the parity.