RAID
RAID stands for Redundant Array of Independent Disks or Redundant Array of Independent Disks.
What is Raid?
RAID is a storage virtualization technology that combines multiple small physical disks into a single large logical unit. It means two are more disks grouped together and appears as single devices to the host system.
RAID provides data redundancy and improved performance by striping, mirroring, and parity generation.
Need/Purpose of RAID:
The purpose of RAID is to provide large capacity disks along with reliability, redundancy, performance, and data availability.
While traditional hard drives are small in capacity, slow performers, unreliable, and not fault-tolerant. RAID has been implemented on hard drives to achieve performance, fault-tolerance, reliability, and large capacity logical single drive.
How RAID Works
In RAID technology, data can be mirrored on one or more disks in the same array, so that if one disk fails, our data is preserved. We do striping, the option of reading or writing to more than one disk at the same time to improve performance.
In striping, sequential data is broken into segments which are sent to the various disks in the array, speeding up throughput.
How to implement RAID?
RAID can be implemented in two ways
- Software RAID (by using operating system drivers)
- Hardware RAID (By dedicated RAID hardware)
Software RAID
Software RAID means implementing RAID by using Operating system drivers.
Primarily used with entry-level servers
Nowadays most operating systems have software RAID capability.
- Windows uses Dynamic Disks (LDM) to implement RAID
- Linux uses either the MD-RAID or LVM for a software RAID
Advantages
It is the cheapest way to implement RAID.
Disadvantages
It is not possible to boot an operating system from software RAID0 or RAID5,
No hotswap is possible with software alone, without hardware support. So, software RAIDs have no hot-swap.
Software RAID uses server resources like CPU and cache memory to implement RAID. So it affects the performance of the server.
Hardware RAID
Hardware RAID is implemented by dedicated RAID hardware.
We need to purchase separate RAID controller hardware to implement.
We have two options for this
Having an inexpensive RAID chip possibly a built-in motherboard
Having an expensive standalone RAID controller. These controllers are equipped with their own CPU and cache memory.
OS independent
Build super high-capacity storage systems for high-end servers.
Advantages
Hence implementing this type of hardware RIAD does not affect server performance since it does not use any server resources.
Hardware RAID supports hot-swapping and allows us to boot the operating system
Disadvantages
It is expensive to implement.