RAID arrays have been used for more than 40 years to increase the performance of hard disk drive (HDD) storage systems. But a single solid state drive (SSD) RAID array can offer performance which is comparable to many HDD RAID arrays, and is therefore often seen as an alternative to an SSD RAID array.
Plus, using SSD RAID arrays can lead to further performance gains, so rather than being an alternative to RAID, SSDs should really be seen as a complement to RAID. When it comes to the SSD vs. HDD debate, the SSD RAID clearly shines in performance.
Some SSD RAID configurations can also be used to protect data in the event of a disk failure. Although SSDs tend to be more reliable than HDDs because they have no moving parts, they are still prone to failure. Clearly, flash storage memory has its challenges
For that reason, SSD RAID can also be extremely useful when used with SSDs in applications where data protection is particularly important.
The Purpose of RAID
The term RAID comes from the phrase "Redundant Array of Inexpensive Disks," and perhaps the most important word in that phrase is "Inexpensive." That's because RAID was coined in 1987 by computer scientists who wanted to demonstrate that standard, inexpensive disks configured in a suitable RAID array could offer performance that was superior to expensive high performance disks that were available at the time.https://o1.qnsr.com/log/p.gif?;n=203;c=204660761;s=10655;x=7936;f=201812281257540;u=j;z=TIMESTAMP;a=20400368;e=i
But the use of an array of disks that presents itself to a computer system as a single storage device had been commonplace before the term was coined, mostly for data protection purposes. The simplest array configuration that offers data protection is one that provides mirroring: data stored on one drive is copied to the other so that each is a mirror image of the other.
The bottom line is this: RAID can be used to increase disk performance, or to provide protection from data loss in the event that one (or sometimes more than one) disk in the array fails completely or partially. By using different RAID levels it can also be used to provide a combination of the two, in varying proportions.
RAID performance benchmarks increase markedly when there are multiple SSDs crunching data.
SSD and RAID
Here's how RAID and SSD are used together to prevent failure/losing data:
SSDs tend to be highly reliable as they have no moving parts and because they generate less heat than HDDs so do not suffer wear from thermal expansion. But even though complete disk failures are rare, data stored on an SSD can still be lost. This is due to the corruption of individual bits stored in the NAND cells through interference between cells or even complete cell failure due to heavy usage.
Using an SSD RAID in a RAID 1 configuration, if one drive fails then no data will be lost, because the data it stores is also mirrored on the other drive in the SSD RAID array. RAID 1 also provides a degree of performance enhancement because any read request can be handled by either drive in the SSD RAID array.
The main drawbacks to an SSD RAID 1 array are:
- Users can only use half of the total storage capacity of the two drives (a storage efficiency of 50%).
- Users consume about twice the power of a single drive system. (SSDs are much more energy efficient than HDDs, so this point is less. important with an SSD RAID array
In fact there are many other RAID configurations which use different numbers of disks, and techniques such as RAID stripe storage (splitting data between different disks) and storing parity bits. These different RAID configurations offer different combinations of performance gains, data protection, and storage efficiency.
HDD RAID vs. SSD RAID
When considering the relative attractiveness of HDD RAID v SSD RAID setups, two facts are key:
- HDDs are more prone to failure.
- HDDs offer lower performance.
This is important, because a RAID array can help you achieve better performance or better protection against disk failure, or both.
In an HDD storage environment, situations where single disk performance is inadequate for a specific workload will occur more frequently than in an SSD storage environment, simply because HDDs offer lower performance. The same is true when you consider data protection instead of disk performance.
For those reasons, RAID arrays are likely to be a sensible solution to storage problems more often in companies which have SDD storage infrastructure in place.
However, companies with SSD storage systems in place are likely to be ones which have workloads which have particularly demanding storage requirements in terms of performance. In some cases single SSDs may still struggle to offer the performance required, and in these circumstances an SSD RAID array may provide the performance boost required.
So when comparing HDD RAID vs. SSD RAID it may helpful to remember this: HDD RAID can increase performance from a low level to an acceptable level, while SSD RAID may increase performance from an acceptable level to a very high level.
SSD RAID Rebuild Times
Both SSD RAID and HDD RAID offer data protection options, but there is a crucial difference between the two in practice. This difference arises from the fact that SSDs offer better performance, and that means that when a disk in an SSD RAID array fails a RAID rebuild from the remaining disks can be carried out much faster than is the case with an HDD RAID array.
And since HDDs are intrinsically less reliable than SSDs, that means that another failure within the HDD array during the RAID rebuild is statistically more likely than is the case with an SSD RAID array.
Using SSDs with Different RAID Types
Using an SSD RAID array can offer effective protection against data loss and performance enhancement. The big question is: which RAID level should you use in an SSD RAID array?
SDD RAID Stripe
For data protection purposes, RAID 0 can be ruled out because it uses a RAID stripe pattern written to two disks to increase performance, but this offers no data redundancy. RAID 1, on the other hand, offers complete redundancy but only modest performance gains, and should therefore be considered if performance enhancement is not a driver for SSD RAID adoption.
SSD RAID 5 and 6
Popular alternatives that provide redundancy are RAID 5 (which uses data striping with parity bits with a minimum of three disks) and RAID 6 (which uses striping and double parity with a minimum of four disks). This has the benefit that any two disks can fail without losing data. Both these SSD RAID configurations offer increased performance, but the boost is not as great as the difference between SSD RAID 0 vs an SSD running alone (i.e. not part of an SSD RAID array).
The problem with RAID 5 and RAID 6 in SSD RAID arrays is that both these systems require large numbers of disk write operations to accommodate the parity information. (RAID 6, in particular, requires two extra parity writes each time any data is written) Since SSD NAND cells have a limited number of writes before they wear out, this makes RAID 5 and RAID 6 less suited to SSD RAID arrays.
SSD RAID 10
A better alternative to RAID 5 or RAID 6 may be to use an SSD RAID configuration at level 10. RAID 10 uses RAID stripe (a common SSD RAID 10 stripe size is 128 or 256 kb) and mirroring to provide fault tolerance with a minimum of four SSDs. An additional benefit of RAID 10 is that it offers very high performance, but storage efficiency is low (25% in a four disk SSD RAID array).
SSD RAID Performance
Connecting multiple SSDs to a RAID controller to create an SSD RAID array in certain SSD RAID configurations can have an enormous impact on performance, with the proviso that peak performance is limited by the throughput capacity of the RAID controller itself. The RAID level that offers the best performance is RAID 0.
RAID 0 vs. SSD
As discussed earlier, a simple two SSD RAID 0 setup which uses RAID stripe techniques to RAID stripe data between two SSDs can result in a doubling of performance compared to a single SSD, although this setup provides no redundancy and only offers 50% storage efficiency.
If storage efficiency is no object, then a four SSD RAID 0 array would offer up to four times the performance of the slowest disk in the array (subject to the SSD RAID controller limit) but with a storage efficiency of just 25%.
Other SSD RAID levels such as RAID 1 offer small performance gains – a two SSD RAID 1 array is principally designed to protect data, but since both disks can be read at the same time there is some improvement in read speeds (but none in SSD write performance).
RAID 10, which used a combination of RAID 0 (which uses RAID stripe storage) and RAID 1 (which uses mirroring) can offer significant increases in SSD performance, but it is less storage efficient than RAID 0, and the performance gains are about half as great.
Is a SSD RAID "Worth It"? (Hint: It's All About Cost)
The purpose of a SSD RAID array is to provide protection against data loss, or to increase disk performance, or both.
When it comes to data loss protection, there is no doubt that appropriate RAID levels have much to offer, and this is equally true with HDD RAID arrays and SSD RAID arrays.
As for performance, if storage redundancy is not required then a suitable SSD RAID configuration such as RAID 0 offers a reliable way to get a big performance boost, as an alternative to using technologies such as Intel Optane based SSDs or NVMe Fabrics.
The biggest limitation of SSD RAID arrays (again, aside from the SSD RAID controller speed limit) is the cost. SSDs are more expensive per Gigabyte than HDDs, and using an SSD RAID configuration that offers 50% storage efficiency such as a two SSD RAID 0 array or a four SSD RAID 10 array effectively doubles these costs.
Ultimately, when it comes to using SSD RAID arrays for performance, the future will be dictated by economics. If newer, faster non-volatile storage technologies can offer better performance for the same or lower costs then there may be no need to use a standard SSD RAID array.