Using RAID 5 sub-arrays

it is still only necessary to cluster four write commands together, as opposed to the seven necessary as indicated below. The array of drives appears as two separate sub-arrays, each with its own rotating parity.

P (40-43)

C40

C41

C42

C43

P (44-47)

C44

C45

C46

C47

Stripe 5

 

 

 

 

 

 

 

 

 

 

 

C32

C33

C34

C35

P (32-35)

C36

C37

C38

C39

P (36-39)

Stripe 4

 

 

 

 

 

 

 

 

 

 

 

C24

C25

C26

P (24-27)

C27

C28

C29

C30

P (28-31)

C31

Stripe 3

 

 

 

 

 

 

 

 

 

 

 

C16

C17

P (16-19)

C18

C19

C20

C21

P (20-23)

C22

C23

Stripe 2

 

 

 

 

 

 

 

 

 

 

 

C8

P (8-11)

C9

C10

C11

C12

P (12-15)

C13

C14

C15

Stripe 1

 

 

 

 

 

 

 

 

 

 

 

P (0-3)

C0

C1

C2

C3

P (4-7)

C4

C5

C6

C7

Stripe 0

 

 

 

 

 

 

 

 

 

 

 

It can be seen that the more sub-arrays used, the more likely it is for a Full Stripe Write to occur. We recommend that you use either four or five drives in a sub-array, for best performance. The following table shows that even with 15 drives, it is still possible to perform Full Stripe Writes, by clustering together 4 chunks of data.

P

C60

C61

C62

C63

P

C64

C65

C66

C67

P

C68

C69

C70

C71

Stripe 5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

C48

C49

C50

C51

P

C52

C53

C54

C55

P

C56

C57

C58

C59

P

Stripe 4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

C36

C37

C38

P

C39

C40

C41

C42

P

C43

C44

C45

C46

P

C47

Stripe 3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

C24

C25

P

C26

C27

C28

C29

P

C30

C31

C32

C33

P

C34

C35

Stripe 2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

C12

P

C13

C14

C15

C16

P

C17

C18

C19

C20

P

C21

C22

C23

Stripe 1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

P

C0

C1

C2

C3

P

C4

C5

C6

C7

P

C8

C9

C10

C11

Stripe 0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

As well as the performance advantage gained from using multiple sub-arrays, there are a number of other advantages.

Experiencing multiple drive failures

In a configuration with multiple sub-arrays, it is possible for the array to sustain multiple drive failures, provided that there is only one failure in each sub-array.

Promoting faster rebuild

A rebuild operation must read data and calculate parity from all the remaining drives in the array. If multiple sub-arrays are used, this means that it is only necessary to read the data from the remaining drives in the sub-array, not all

www.gateway.com

231