As an Amazon Associate I earn from qualifying purchases @AMAZON
RAID 0 Striping
A RAID-0 stripe uses 2 or more hard drives to store alternating chunks of the data. This is known as RAID striping, and it splits the workload among the drives. Since the drives can work in parallel (simultaneously), performance is greatly enhanced when large data transfers are made.
A stripe offers several advantages:
- Greatly increased performance; using two drives doubles performance, using four drives quadruples it, etc. The increase is not exact, but it’s very close.
- Increased capacity; with two drives the capacity is doubled, with four drives the capacity is quadrupled, etc.
- Presents multiple drives as a single volume on the desktop. Instead of a mess of 2/3/4 individual volumes, there is one larger and much faster single volume.
RAID-5 is an attractive alternative to RAID-0 striping, because in essence it is a RAID-0 stripe (with one less drive) along with fault tolerance (capacity of one drive used for parity data). See Software RAID-5 in SoftRAID.
A RAID-0 stripe is said to “scale” if the sustained transfer speed for N drives is N times the speed of a single drive. For example, performance with two drives can be expected to be about twice that of a single drive, for “large” data transfers.
Shown below, the highest pair of lines is a 4-drive RAID-0 stripe. The middle pair of lines is a 3-drive RAID-0 stripe. The red/green lower lines are a RAID-5 (striping with parity).
The stripe size is the size of chunk that each drive in the stripe handles. In most cases, a 32K or 64K stripe size is a good choice (use 64K or larger for SSDs).
Programs that write data which is smaller than the stripe size will not see an improvement from striping, since a single drive within the stripe has to handle such requests.
For example, writing 4K, 8K, 23K of data to a RAID-0 volume that has a 32k stripe size means that the data will just land on one drive— it’s smaller than the stripe size (even if the data straddles two drives, the advantage is small). But writing (for example) 1MB of data means that all the drives get a share, and thus will handle part of the data in tandem, providing far higher performance. Unfortunately, there is no shortage of poorly-programmed applications that make small reads or writes, negating any advantage or a stripe.
Creating a software RAID-0 stripe
See the RAID-0 stripe how-to page.