RAID is an abbreviation of Redundant Array of Independent Disks technology. RAID has grown its popularity from a normal server option to the most essential data protection need. Now-a-days RAID can be found almost everywhere and most of the Web Hosting service providers are capable of offering RAID enabled servers. Raid can be seen from an operating system software feature to a stand alone controller that offers an advanced data integrity in high end storage area networks. RAID is so common these days that you can even find it Laptops,desktops,workstations, servers and external enclosures with larger number of hard disk drives. The latest in the trend is the addition of RAID in TV Set Top Boxes.
Description of RAID
Before proceeding further, it is necessary to understand RAID. RAID is an abbreviation of Redundant Arrays of inexpensive Disks. With RAID one can virtualize multiple hard disks into one or more than one arrays to improve performance, reliability and capacity. The complete array capacity depends on the type of RAID array and the size and number of disk drives. It does not depend on whether you use software or hardware RAID.
Various aspects of Software RAID and Hardware RAID
The simplest description of Software Raid is that the task operates on the CPU of your computer. At a first glance it sometimes seems that Hardware RAID to be implemented as some piece of hardware is included. Hence, its necessary to understand that software RAID code utilizes the calculating efficiency of the CPU. The code that provides the RAID features functions on the computers CPU, which shares the computing power with the operating system and the applications assiciated with its operations.
There are various implementations of Software RAID, namely: a) As a hybrid solution which includes some hardware design for improving the performance and to reduce the CPU overhead, or b) As a completely software solution also referred as Operating System Software RAID.
In case of a Software RAID no additional hardware is used.The software RAID uses only the hard disk drives what are attached to the computer system via a built in I/O interface or a processor less Host Bus Adapter also referred as HBA. It immediately comes into action as soon as the OS loads the drivers of RAID.It usually comes integrated with the server OS and is usually free or is offered at cheap price which is the most important advantage.
Below are some of the advantages and disadvantages of Software RAID
a)Software RAID is cheaper or depending on the web hosting provider no cost is charged since it is built in the Operating System itself. You are charged only for the additional hard drives.
b)The protection isn’t offered until the system is booted.
c)Incase you are using a Software RAID, it is bound to adversely effect the performance of the system.With each addition of hard drive needs to use a more complex RAID system this further affects the overall performance.
d)If software RAID is implemented on a certain OS it may be possible that migration of the array fails due to the difference in the OS or its versions.
e)In this type of RAID, it is considered as an application on the computer system, hence it is vulnerable to viruses and various harmful softwares alike any other computer application.
f) Server related software or hardware problems can impact the data integrity and consistency.
It is also referred as hardware assisted Software RAID. This too is a software RAID but the hardware assistance is provided with it to overcome some weaknesses of pure software RAID. Usually addition hardware is provided with it such as RAID BIOS integration onto the motherboard. This additional BIOS makes the RAID functionality available when the system is turned ON.This improves the redundancy during boot ups.
Advantages and Disadvantages of hybrid RAID
a)Affordable Price: An HBA or additional flash memory for BIOS on motherboard is required for this purpose.
b)No need to worry during system Boots: There is no adverse impact on the availability.
c)The more the complex RAID application is involved, there is an adverse effect seen on the overall performance.
d)Dedicated GUI and software to maintain RAID
e)It is simple to set-up
Web hosting providers offer Hardware RAID solutions. It has its own processor and memory for the operation of RAID. Hardware RAID implementation is independent computer system and is specifically dedicated for the RAID application. This plays an important part in decreasing the load on the host system. Hardware RAID can sometimes be an upgrade of software to your existing system. Similar to the Software RAID, Hardware RAID too cannot be identified at a single instance. The best way to identify it,is to read the technical specification of the RAID solution.If the solution includes a micro processor one must understand that the solution provided is of Hardware RAID. On the other hand if there is no processor mentioned you can take that as a software RAID. This is an important aspect to know due to the system impacts of the software RAID vs Hardware RAID implementation.
Below are some of the impacts:
a) It may impact CPU utilization and performance when other applications are functional.
b)There may be an impact on the scalability of disk drives that can be added to the system
c)There is also an impact observed in the recovery data incase it is lost.
d)The capability for advanced data management can be hampered
e)The may be an inability to manage the disk drives across different operating systems.
f)The ability to add a battery back-up option that allows to enable write caching on the controller to enhance write performance of a system too can face the impact.
Benefits of a Discrete RAID Controller Card:
Protection during boot: There isn’t any false impact on data availability when boot drive has least errors or there is a complete failure.
Performance independent of workload on server: Fast memory, fast processor and no impact on the performance of the application(s) running on the host system.
RAID application independent of host: No data integrity issues when system crashes.
Enhanced protection in case of power failure: Hardware RAID implementations typically keep track of in-progress writes in non-volatile hardware. Software RAID implementations
lack this protection, which makes it difficult to recover from a power loss during a write.
Not vulnerable to viruses: RAID arrays are completely independent of the host system and OS. No data integrityissues occur if the host system fails.
Offloads the RAID task from the host: Best suited for complex RAID 5 or RAID 6 scenarios which usually offers best cost/performance ratio.
Dedicated GUI and software to build and maintain the RAID: Easy setup and maintenance of the RAID array.
Easy to migrate and replace: Card can be plugged in any system and easily replaced or upgraded with the latest, best performing variant. It is also easier to migrate from one
operating system to another.
Supports advanced RAID features: Typical examples include disk hot plug, array-level migration and online capacity expansion.
On-controller caching: Accelerates access times by usage of cache memory including the ability to use write-back caching if memory is protected by a battery.
Highest cost: I/O processor and additional memory on a plug-in card increases cost