Page 1 of 1

What is RAID and How RAID works …

What is RAID and How RAID works …
   2

The need for more and more reliable data storage space keeps increasing as we move forward in time. Our picture files get bigger, we scan our documents and we collect more videos than ever before.

For more storage we used to simply buy more hard-drives, internal or external. But eventually we have a wide collection of individual drivers each with their own mount point (drive letter under Windows). This is where RAID can help and combine these individual drives to one big drive. More and more computers are RAID capable.

RAID allows us to combine drives, increase speed and improve reliability so we can store more data while our data is stored safer. But it’s not all that straight forward, so in this article a description of what RAID is, what kinds of RAID you might run into and how RAID works …




What is RAID?

RAID stands for Redundant Array of Inexpensive Disks, of course industry marketing prefers Redundant Array of Independent Disks. Who really cares right? RAID allows us to bundle multiple hard-drives which your Operating System (Windows, MacOS X, Linux, etc) will see as one single big drive.

As an example, based on Windows and 3 hard-drives of say 1 Tb:
Without RAID, taking Windows as an example, 3 drives could be seen as the drives C:, D:, and E: of each 1Tb (if each drive would have one partition).
With RAID these 3 drives can be combined to a single hard-drive, C:, with a capacity of 3Tb (depending on the RAID configuration you choose).

In the end RAID is an umbrella name for different variations of combining hard-disks that would then appear to your computer as one single hard-disk.

Multiple disks are combined with different goals in mind, hence the different variations.
Goals can be Faster access to data, more storage space and/or higher reliability.

These variations are named “RAID” followed by a number. For example RAID 0, RAID 1, etc. Each fitting for a particular purpose (see list below).
The different variations come with different levels of speed, reliability, availability and the minimum number of hard-drives needed.

Where can you find RAID?

Back in the day RAID was mostly used with so called File-Server, RAID controllers where expensive and dedicated controllers were the only way to get a RAID array setup.
Now-a-days RAID can be found in pretty much any computer, server, external disk array or NAS (Network Attached Storage), where the “controller” can actually be hardware or software.

Certain SSD manufacturer, to make very fast SSD drives even faster, actually utilize RAID in their SSD controllers, where they combine two (or more) SSD “drives” into one very fast SSD drive.

Note : RAID is available for most hard-drive interfaces like SCSI, IDE/PATA and SATA variations.

Hardware RAID controllers

Hardware RAID controllers are either fixed on the motherboard of a computer, or an add-on card (PCI, PCI Express, etc) or found in an external RAID array solution.
Please note that not all motherboards, external RAID arrays and even RAID controllers that claim RAID support actually have RAID support implemented as hardware. Specially the more affordable models often implement RAID in software.

Hardware RAID is the preferred RAID implementation, as it performs faster and seems more reliable, but it comes at a higher price.

Some hardware RAID solutions have a battery backup to protect your RAID during power failure (easy to create yourself by using a regular UPS unit of course).

RAID Controller card (SATA example)

RAID Controller card (SATA example)

RAID on a motherboard (Adaptec SATA)

RAID on a motherboard (Adaptec SATA)

Software RAID controllers

As a cheaper alternative to hardware RAID are RAID solutons implemented in software. This can be a part of the BIOS, firmware on a cheaper RAID controller card, or a driver in the Operating System (no special hardware needed).

Note that not all software RAID solutions allow you to boot your computer from!
I’ve run into situations where LINUX for example didn’t seem to like to install on a software based RAID boot disk.
Windows and MacOS X do not seem to have much of a problem with that and both even have a software RAID solution standard available (although not often used).

The downside of RAID in software is that it performs slower than hardware implementation, although modern solutions perform pretty well, and possibly less reliable compared to a hardware solution.

Getting started with RAID

Before starting with RAID, I highly recommend starting with making a choice what RAID variant you’d like to use.
Your choice can be influenced by quite a few factors and I usually start out with these questions:

  • What would be the main reason to consider RAID? Reliability, Speed or Capacity? These all require different RAID configurations.
  • What is the budget you have in mind? Budget has a big influence on the choice if you should go for software or hardware RAID.
  • What kind of existing hard-drives do you have? Or would you prefer to start working with new drives (SATA works well and is the cheapest)?

Purpose of your RAID

My RAID setup, as an example, is used as a file server (QNAP NAS).

It runs 24/7 and I’d like it to stay cool (heat reduce the life span of your equipment), so I use hard-drives that run at a lower speed (5400 RPM) so the drives stay cool and use minimal power. Another advantage of low RPM drives is that they are QUIET …
Speed in that particular case doesn’t really matter much – after all: all data is being pushed through a slower ethernet or Wifi connection.
For me reliavility is more important than speed anyway, therefor I chose RAID 6 for my configuration.

Caution when selecting Hard-drives 

Certain so called “green drives” should be avoided.
Seagate green drives appear to have issues in general, and Western Digital drives (models: EARS, EADS, EVDS) should be avoided in RAID setups.
I have however had very good experience with Western Digital Green drives of the EZRS series – my RAID-6 Array has been running 24/7, with reasonably intense use, for 2½ years now … without a single issue.

My point with this example is: Think about the main purpose of your RAID setup.
For video editing and maybe gaming for example, you’d probably prefer a fast RAID setup.
For you documents and family photo’s you’d probably prefer reliability over speed.
RAID in your workstation/computer, specially when used as a drive to boot from, you’d probably want to see a fast RAID configuration.

To get an idea what RAID configuration might suit your needs best, see the list below.

How RAID works – RAID Configurations

Note that with all RAID variations, similar sized drives are required. (JBOD is not a RAID variation)

When looking at these configurations you might notice that there is a trade-off between PERFORMANCERELIABILITYSTORAGE SPACE.
If you for example want a higher speed, then you’ll see that reliability and/or storage space will be reduced.
Dito for Reliability increase which will affect performance and/or storage capacity.

RAID is not a BACKUP! 

Although RAID cannot replace a real backup, it most certainly can contribute to a more reliable storage of your data, specially when using RAID 5 or RAID 6.
Backups however have the advantage that you can actually resort to older backups if needed. RAID however will not give you that ability. Once something a file is updated on your RAID setup, the data will be [high probability] lost.

RAID Configurations:

RAID 0 – Striping

In RAID 0 data is written in parallel to 2 or more disks. Think of it as writing block 1 to disk 1, block 2 to disk 2, block 3 to disk 3 etc.
Minimum number of required drives: 2 drives (even number),
Space efficiency: 100% of the sum of the capacity of the drives.

  PRO:
The great advantage is SPEED as data is written or read in parallel. Another advantage is that all of the storage capacity will be available for storage.

  CON:
The big downside is lack of reliability. If one disk crashes all data is gone, as half of the information will be lost.
Unless you’re in real need for speed, I would not recommend this for regular use.

RAID 0 - Striping

RAID 0 – Striping

RAID 1 – Mirroring

RAID 1 arrays mirror de data of one drive to another drive. So when your computer writes data to the array, the controller will actually write the data twice: to disk 1 and to disk 2.
Minimum number of required drives: 2 drives (even number),
Space efficiency: 50% of the sum of the capacity of the drives.

  PRO:
Increased reliability since data is always saved in duplicate on two different drives. If one drive dies, the other will still be able to provide you the data.

  CON:
Not very efficient when it comes to remaining storage, as you need at least two the same drives, but in the end only have the storage space of only one drive.

RAID 1 - Mirroring

RAID 1 – Mirroring

RAID 2 – Bit level Striping (not used)

RAID 2 uses striping on bit level, which theoretical could come with very high transfer rates (speed).
However, at this point there are no commercial applications available that utilize RAID 2.
Minimum number of required drives: 3 drives.

  PRO:
Possibly very high transfer speeds.

  CON:
Not used/available in RAID controllers.

RAID 3 and RAID 4 – Striping and Parity Check

RAID 3 and RAID 4 simplistically put work the same way. The difference between the two is that RAID 3 works on byte level where as RAID 4 works on a block level.

Think of it as data being written as follows: block 1 goes to drive 1, block 2 to drive 2, block 3 to drive 3 and a calculated parity to drive 4.
If one drive fails, the “missing” data can be recalculated based on the remaining data.
Both RAID 3 and RAID 4 are not very common.
Minimum number of required drives: 3 drives,
Space efficiency: Sum of the capacity of all drives – ( Sum of the capacity of all drives / number of drives )

  PRO:
Data reliability is good.

  CON:
Performance (speed) seems rather poor, although RAID 3 should perform very well with long sequential read/write, like for example large video files.

RAID 3 / RAID 4 - Striping with Parity

RAID 3 / RAID 4 – Striping with Parity

RAID 5 – Striping with rotating Parity

RAID 5 works in essence the same as RAID 4 (block level), but instead of storing all the parity blocks on one drive, the parity blocks are evenly spread out over all drives.
Unlike RAID 3 and RAID 4, RAID 5 is used very commonly and performs better than either. As with RAID 3 and RAID 4; if one disks fails, the missing data can still be calculated based on the existing data.
Minimum number of required drives: 3 drives,
Space efficiency: Sum of the capacity of all drives – ( Sum of the capacity of all drives / number of drives )

  PRO:
Very good data reliability and good performance.

  CON:
Not really a “con” but RAID 6 is even more reliable with similar performance.

RAID 5 - Striping with distributed Parity

RAID 5 – Striping with distributed Parity

RAID 6 – Striping and Double rotating Parity

RAID 6 can be seen as an extended RAID 5. It actually maintains 2 parity calculations, and like RAID 5 these are equally distributed offering the ability to even recover from 2 failing drives.
Minimum number of required drives: 4 drives,
Space efficiency: Sum of the capacity of all drives – ( 2 x Sum of the capacity of all drives / number of drives )

  PRO:
Good speed performance, and higher reliability.

  CON:
The remaining capacity will be lower than RAID 5.

RAID 6 - Striping with double distributed parity

RAID 6 – Striping with double distributed parity

Nested RAID configurations

Certain RAID variations can be combined, depending on your RAID controller of course, and are referred to as “Nested RAID“.

Below an example of RAID 10 or RAID 1 + 0 … Data is written in parallel (RAID 0) and then written mirrored (RAID 1).
Other variations are RAID 0+1, RAID 50 (RAID 5 + RAID 0), RAID 100 (RAID 1 + RAID 0 + RAID 0), RAID 53 (RAID 5 + RAID 3) and RAID 60 (RAID 6 + RAID 0).

These variations can offer additional speed and reliability but typically at the expensive of storage space.
However these variations are typically not used in regular home settings.

  PRO:
Custom RAID. You can configure your own fitting your own needs.

  CON:
Not all RAID controllers support this and the resulting storage capacity will be much lower than other configurations.

RAID 10 - Nested RAID

RAID 10 – Nested RAID

JBOD (not RAID)

JBOD, or Just a Bunch Of Disks, is not a RAID variation, but most RAID controllers support it.

With JBOD, basically hard-disks are stringed in a sequence, offering the sum of the capacities of all hard-disks in the string.
When writing data to the “array”, first disk 1 will be filled and when full, disk 2 will be filled, etc.
There is no speed gain here, and when a drive fails in a JBOD the not all data is lost, only the data on the defective drive.
For JBOD disks do NOT need to be of the same size.

  PRO:
Simple and Cheap way of bundling different sized disks.

  CON:
No increase in speed or reliability.

JBOD - Just a Bunch Of Disks (not RAID!)

JBOD – Just a Bunch Of Disks (not RAID!)

Donation options


Donations are very much appreciated, but not required. Donations will be used for web-hosting expenses, project hardware or a motivational boost (a drink or snack). Thank you very much for those have donated already! It's truly AwEsOmE to see that folks like our articles and small applications.

Comments


There are 2 comments. You can read them below.
You can post your own comments by using the form below, or reply to existing comments by using the "Reply" button.

  • Mar 18, 2015 - 6:56 AM - Kirubakaran Comment Link

    Excellent. Now i clear cut understand Raid configuration..

    Reply

    Kirubakaran

    • Mar 18, 2015 - 7:17 AM - hans - Author: Comment Link

      Thanks Kirubakaran for taking the effort to leave a nice feedback, it’s much appreciated!
      Glad to hear the article was useful to you! 

      Reply

      hans



Your Comment …

Friendly request to not post large files here (like source codes, log files or config files). Please use the Forum for that purpose.

Please share:
*
*
Notify me about new comments (email).
       You can also use your RSS reader to track comments.


Tweaking4All uses the free Gravatar service for Avatar display.
Tweaking4All will never share your email address with others.