A SERVICE OF

logo

230
Appendix A: Optimizing RAID 5 Write Performance
www.gateway.com
To get the highest performance from this system, it is necessary to have a
number of stripes being written in parallel. As the array expands, with more
and more drives, the number of commands (and amount of sequential data)
necessary to do this increases.
In this table we can see that seven chunks of sequential data are necessary to
fill a stripe. To have multiple commands active for all hard drives requires more
data than with five drives. As can be seen, this number will increase as the
number of drives increases. If a large number of drives are used, it can get
difficult to achieve maximum performance, because it becomes more difficult
to cluster a large number of commands to achieve a Full Stripe Write.
Using RAID 5 sub-arrays
The difficulty in realizing the maximum performance possible introduces the
concept of a Sub-Array. Suppose an array consisted of two RAID 5 sets. If these
are then striped, the resulting array would appear as shown in the second of
the following tables. In this case, in order for a Full Stripe Write to be performed,
P (56-62) C56 C57 C58 C59 C60 C61 C62 Stripe 8
C53 C54 C55 Stripe 7
C46 C47 C48 Stripe 6
C39 C61 C62 Stripe 5
C32 C33 C34 Stripe 4
C24 C25 C26 C27 Stripe 3
P (49-55)C50 C51 C52
P (42-48)C43 C44 C45
P (20-23)C36 C37 C38
P (28-34)C29 C30 C31
P (21-27)C22 C23
C17 C18 C19 C20 Stripe 2
P (14-20)C15 C16
C10 C11 C12 C13 Stripe 1
C3 C4 C5 C6 Stripe 0
P (7-13)
C49
C42
C35
C28
C21
C14
C7 C8 C9
P (0-6) C0 C1 C2