How much faster is RAID 0 SSD?

RAID 0 SSD arrays can provide significant performance improvements over single SSDs. By striping data across multiple drives, RAID 0 improves read and write speeds by allowing data requests to be distributed between drives. The exact performance gain depends on several factors.

What is RAID 0?

RAID 0 (also called disk striping) is a method of combining multiple disk drives into one logical unit. Data is split up and distributed evenly across the drives with no parity or duplication. This allows read and write operations to be performed in parallel, increasing performance.

Some key characteristics of RAID 0:

  • Data is striped across multiple drives for faster reads and writes
  • There is no parity or duplication, so all drives are used for data storage
  • Provides improved performance over a single drive
  • No fault tolerance – if one drive fails, all data is lost
  • Requires at least 2 drives

RAID 0 is commonly used when performance is the priority over data redundancy. The lack of fault tolerance means it should not be used for mission critical data.

How does striping work in RAID 0?

Striping is the key mechanism that allows RAID 0 to achieve faster speeds. Here’s a simple example of how data striping works across a 2 disk RAID 0 array:

The data to be written is split into segments (typically 16KB – 128KB in size). The first segment is written to the first drive, the second segment to the second drive, the third to the first drive again, and so on.

This alternating back and forth allows the workload to be distributed between drives. For example, if a large 128KB file is being written, Drive 1 can be writing the first part of the file while Drive 2 writes the next part at the same time.

Reading data works similarly – the controller reads alternating segments from each drive in parallel to take advantage of the higher throughput.

Having drives work simultaneously on part of the workload is what enables RAID 0 to achieve faster read/write speeds.

RAID 0 Performance Factors

Several factors play a role in determining RAID 0 performance gains over a single disk:

  • Number of disks – More disks means increased parallelism. A 4 disk RAID 0 can handle 4x the read/write requests of a single disk.
  • Disk type – SSDs provide faster access times over HDDs, so RAID 0 SSDs see a bigger benefit.
  • Disk speed – Faster disks (RPM for HDDs, NAND type for SSDs) improve overall array speed.
  • Controller – The RAID controller can impact how efficiently requests are distributed.
  • Access pattern – Sequential access sees better gains than random.
  • Stripe size – Larger stripes generally provide better performance.

In general, RAID 0 SSD configurations can achieve anywhere from 2-4x the performance of a single SSD depending on the factors above.

RAID 0 SSD vs Single SSD

Let’s look at some benchmark examples of RAID 0 SSDs compared to single SSDs:

Configuration Read Speed Write Speed
960GB Single SSD 551 MB/s 517 MB/s
2x 480GB RAID 0 SSDs 1013 MB/s 984 MB/s
4x 240GB RAID 0 SSDs 2108 MB/s 1876 MB/s

Here we can see that on sequential reads/writes, a 2 drive RAID 0 configuration nearly doubles the performance of a single drive. Scaling up to 4 drives shows nearly a 4x increase in throughput.

The performance gains are a result of being able to stripe data reads and writes across multiple disks. The workload is divided between drives allowing them to operate in parallel.

RAID 0 SSD vs RAID 10 SSD

RAID 10 (also called RAID 1+0) is another common SSD RAID level that provides increased performance over a single drive. RAID 10 combines both striping (RAID 0) and mirroring (RAID 1).

Comparing RAID 0 to RAID 10 SSD performance shows that RAID 0 will be faster in most workloads. This is because in RAID 10, half of the total capacity is used for mirrors, reducing the amount of space for striping data across drives.

However, RAID 10 balances performance and fault tolerance by being able to withstand a disk failure. RAID 0 lacks that redundancy, so a single drive failure results in total data loss. The choice between RAID 0 and RAID 10 depends on whether performance or reliability is more important for the use case.

Configuration Read Speed Write Speed
2x 480GB RAID 0 SSDs 1013 MB/s 984 MB/s
2x 480GB RAID 10 SSDs 538 MB/s 518 MB/s

This comparison shows RAID 0 with double the throughput of RAID 10. The performance difference comes from RAID 0 being able to fully stripe data across both drives, while RAID 10 has to reserve half the space for mirroring.

Ideal RAID 0 Use Cases

Here are examples of use cases where RAID 0 SSD configurations make sense:

  • Video editing & production – The fast access speeds help when working with and rendering large video files.
  • Database servers – Managing many transactions and requests benefits from higher IOPS.
  • High bandwidth applications – Any app needing sustained reads/writes, like data analytics.
  • Gaming PCs – Decreased game load times and texture streaming bottlenecks.
  • Caching tiers – Frequently accessed data is striped for low latency.

The key criteria are workloads that are heavy on reads and writes and can take advantage of the parallel performance of RAID 0. The vulnerability to drive failures means RAID 0 shouldn’t be used for crucial data.

RAID 0 SSD Performance Scaling

As we saw from the earlier benchmarks, RAID 0 SSD performance scales up linearly with each drive added to the array. This chart illustrates how read and write throughput typically increases with more drives:

# of SSDs Read Speed Write Speed
1 SSD 500 MB/s 450 MB/s
2 SSDs (RAID 0) 1000 MB/s 900 MB/s
4 SSDs (RAID 0) 2000 MB/s 1800 MB/s

There are diminishing returns as you add more drives. But in general, for every SSD added to a RAID 0 array, a linear increase in performance can be expected up to the limit of the RAID controller or PCIe bandwidth.

RAID 0 SSD Stripe Size

An important tuning factor for RAID 0 performance is the stripe size. This determines how data is broken down and distributed across the drives.

A small stripe size (8KB for example) means smaller amounts of sequential data spread across drives. This works well for random access patterns.

Larger stripe sizes like 128KB or higher are better for sequential access. More sequential data is grouped together on each drive.

Finding the optimal stripe size depends on the typical access patterns. Most RAID controllers have auto-tuning algorithms to determine the best stripe size. 64KB and 128KB are common defaults for SSDs.

RAID 0 SSD – Some Drawbacks

While RAID 0 SSD configurations can provide a nice performance boost, there are some downsides to consider:

  • No fault tolerance – complete data loss if one drive fails
  • Disk rebuild times increase with more drives added
  • Need to match drive capacities across array
  • Performance limited by slowest disk

These limitations can become more pronounced in larger arrays (8+ drives), but are manageable in smaller SSD-based RAID 0 setups.

Conclusion

RAID 0 can provide substantial read and write performance improvements with SSD arrays. Benchmarks show RAID 0 SSDs can achieve up to 4x the speeds of a single SSD.

The degree of speedup depends on the drive count, controller, stripe size and access patterns. Workloads heavy on sequential I/O tend to benefit the most.

While RAID 0 SSDs lack fault tolerance, the performance gains can make them a good choice for non-critical workloads needing fast access. For mission critical data needing redundancy, RAID 10 SSD configurations can offer a good balance of speed and reliability.