Speed Vs Redundancy

If you operate a web server then you are likely always looking for ways to improve its performance and reduce the risk of data loss in the case of hardware failure. Usually that means upgrading things like CPUs and/or RAM – However, you might look at upgrading/changing your current hard drive situation.A great solution which can provide speed and redundancy is a “Redundant Array of Independent Disks” or “RAID”. Essentially, a RAID setup can provide you with faster, more reliable access to your data which will cut down on bottle necks for CPU-intensive requests such as database queries and basic file/data crunching. There are several types of RAIDs that you can setup. The one you choose depends upon what you want it to provide.

If speed is all you’re after, then RAID 0 is a good choice. In RAID 0 there are 2 drives. All data is “split” into 2 chunks and each chunk is written to a separate drive. When the data is read back, the CPU only has to process half as much data as it would with a single drive, hence read/write times are much quicker than before. On the other hand, if you are simply looking for some protection against hardware failure you might consider RAID 1 – simple drive mirroring. In this scenario, both hard drives in the array are written to simultaneously so if one dies, the other is instantly available. The data here is not split into 2 chunks as in RAID 0 so there is no speed advantage to RAID 1. In fact, it will likely decrease your speed slightly.

Finally, if you want a system that offers both speed and redundancy, you should look at RAID 5. The inner workings of RAID 5 are quite complex, however it provides essentially the “best of both worlds”. In RAID 5 you have a minimum of 3 drives in your array. Data is not only split into chunks for writing, but a separate piece of data is created and stored which allows any missing data to be re-created! What this means is should one of your hard drives fail you can simply replace it with a new one and the RAID configuration will reconstruct the data that was on that drive before it failed! So, not only do you get speed increases due to smaller data sizes on read/write operations you also get the utmost in redundancy in the case of hardware failure.