Chapter 8 Storage

These are some terms that you need to know in order to understand storage systems.

Mirroring

In a RAID system using mirroring, all data in the system is written simultaneously to two hard disks instead of one. This provides 100% data redundancy as if one disk fails the other has the duplicated data. Mirroring setups always require an even number of drives.

Duplexing

Like in mirroring, all data is duplicated onto two distinct physical hard drives but in addition it also duplicates the hardware that controls the two hard drives (one of the drives would be connected to one adapter and the other to a second adapter).

Striping

Striping is the breaking up of data and storing different data pieces on each of the drives in an array. This allows faster reading and writing as it can be done simultaneously across disks. Striping can be done at the byte level, or in blocks. Byte-level striping means that the first byte of the file is sent to the first drive, then the second to the second drive, and so on. Block-level striping means that each file is split into blocks of a certain size and those are distributed to the various drives. The size of the blocks used is also called the stripe size (or block size).

Parity

In mirroring 50% of the drives in the array are reserved for duplicate data. Parity is another way to allow data recovery in the event of disk failure using calculations rather than duplicating the data. If you have ‘n’ pieces of data, parity computes an extra piece of data. The ’n+1’ pieces of data are stored on ‘n+1’drives. If you lose any one of the ‘n+1’ pieces of data, you can recreate it from the ‘n’ that remain, regardless of which piece is lost. Parity protection is used with striping, and the “n” pieces of data are typically the blocks or bytes distributed across the drives in the array. The parity information can either be stored on a separate, dedicated drive, or be mixed with the data across all the drives in the array.

Note: In the following figures, A1, A2, A3 and so on are blocks of data from the A file. Similarly, B1, B2, B3 and C1, C2, C3 are blocks of data from the B and C files.

JBOD

JBOD allows you to combine multiple physical disk drives into a single virtual one, so they appear as a single large disk. JBOD can be used to turn multiple different-sized drives into one big drive. For example, JBOD could convert 80 GB and 100 GB drives into one large logical drive of 180 GB. If you have two JBOD volumes (with one disk in each), a failure of one disk (volume) should not affect the other volume (disk). JBOD read performance is not as good as RAID as only one disk can be read at a time and they must be read sequentially. The following figure shows disks in a single JBOD volume. Data is not written across disks but written sequentially to each disk until it’s full.

Table 28

JBOD

 

 

 

A1

 

B1

A2

 

B2

A3

 

B3

A4

 

B4

 

 

 

DISK 1

 

DISK 2

 

 

 

 

171

Media Server User’s Guide