Implementing RAID 0

mdgtifan

Distinguished
Jan 6, 2010
2
0
18,510
I would like to add a second hard drive to my computer in RAID 0 configuration and have a few questions.
1) Can I add the 2nd drive without erasing all the data currently on the 1st drive?
2) Should I use the built in software RAID controller or buy a dedicated RAID controller card?

My current computer specs are:
Dell Precision T3500
Windows 7 64-bit
Western Digital 10K rpm 160GB HDD
Intel W3580 processor


Thanks
 

Paperdoc

Polypheme
Ambassador
Several thoughts come to mind, starting with why you want to make this change. But then, I'm no fan of RAID0, so let's not discuss this at length, and just assume you will make the change.

No matter what the system claims to be able to do, BACK UP ALL YOUR C: DRIVE FIRST. There is always the risk in this process that something will go wrong and you will lose everything on your existing HDD. So, make the backup, then TEST / VERIFY that backup to be sure you can actually get all your stuff back from it, BEFORE proceeding. Ultra-cautious me, I'd make and verify TWO backups if I could.

Software or dedicated? Depends on a few considerations. A dedicated add-on RAID controller card can be slightly faster IF you get one of the better ones that actually has its own dedicated HDD controller chip on board. But the cheaper cards really are "software RAID" cards that use your mobo's CPU to do the work and hence are a bit slower. These are not much different at all from using the "built-in RAID" included in your mobo's BIOS, which also is a software RAID.

The other "advantage" for add-on cards comes from the discussion of what happens when your RAID controller fails? The root of this is that there is no universal standard way of doing RAID. So, if your RAID controller fails (say, on the mobo, or if the mobo itself fails somewhere else and must be replaced), there is a real risk that the new RAID controller cannot understand all of the data already written on your disks, and you effectively lose all of it. In some cases this risk can be minimized. A few years ago I built a system using on-board RAID1. In doing so I deliberately bought a mobo with an nVidia chipset because nVidia's website assured me that, as they update to new chipsets, they always use the same basic RAID algorithms so that later RAID controllers by nVidia will still work with disks written by earlier ones. More recently that mobo failed and I had to replace with a different one from a different manufacturer. But I chose one with an nVidia chipset. It worked like a charm! When everything was installed it just booted right up from that same pair of RAID1 drives with no trouble at all. So, sometimes you can make such a switch IF the new RAID chips understand the old drive data. On the other hand, some people prefer to use separate dedicated add-on RAID controller cards because, they reason, you can always go back to the makers of your original add-on card and buy another that IS compatible with the older card and disks, and you're good to go!

So, built-in (mobo provides) or dedicated add-on RAID controller? Add-on MAY give you better assurance of recovery from RAID controller card failure through availability of compatible replacement cards, and MAY give you slightly faster performance IF you buy an upper-end card that includes its own controller chips.

To make the change you will have to read carefully the instructional manual on the RAID system you choose. Some RAID setup utilities may be able to take all the data on a single existing drive and re-arrange it between it and a second drive to create a RAID0 array. For making a RAID1 array this is easy because the data on the first drive is not changed - it is merely copied to the new one with minor changes to disk structure records. But RAID0 is a different animal, and half of the data from the original drive must be MOVED (copied to second drive and then deleted from first drive), which is much more difficult and has a much higher risk of going wrong. I believe that some RAID setup systems simply will not attempt this. They will tell you that you MUST back up your data because creating the RAID0 array will wipe it all out. Afterward you then must restore everything to the new "drive" (which is really a RAID array that the OS sees as one drive). So read the instructions very carefully. And, as I cautioned, even if it says it can make the change for you without wiping out the old data, I would ALWAYS make and verify the Backup first.

There is one other glitch you will have to deal with. You have an OS (Win 7 64-bit) already installed on your existing C: drive. That OS has its own built-in device drivers to be able to boot from and use any common HDD - IDE (PATA), SATA, or AHCI. But it does NOT know how to use or boot from a RAID array of any kind. You have to provide that RAID device driver, and somehow it needs to be added into the OS so it can be used to read from the array in order to boot. You will have two options how to accomplish this.

The smoothest method in the long run is to use the system Windows designed. BUT this requires that you re-install Win 7 to your new RAID0 array, and I can only expect that it would require starting from a completely blank RAID0 array. In other words, this would make it MANDATORY that you back up your current hard drive and plan to restore most of it to the array later. Early in the normal Win Install process there is a screen that offers you the option to install drivers from an external source, and you must press F6 to do that. (If you don't, this option just times out and it continues.) Press F6 and you get to insert into your optical drive (or floppy drive) a disk containing the drivers you want, and they will be added into the OS being installed in such a way that they are permanently available, even for all future boot operations from the disk system. The details of this, no doubt, are shown in the manual that came with your mobo - where to find those RAID drivers, how to put them on a CD or floppy disk, how to load them into the Windows Install routine. Then the rest of the Install process proceeds as usual. You end up with Windows installed on your RAID0 array and fully bootable, no trouble. Now, if you go this route, you still will have to figure out how to restore all the application software and data from your old disk's backup without disturbing the new Windows you just installed.

Well, there is a second alternative for situations that did NOT have those RAID drivers installed up front. Most Windows OS's also have an option (you may have to hit a special key during boot to find this - read up on it) to let you add in the missing driver(s) from a disk (optical or floppy) during each boot process, and then it can use the RAID driver from that disk to boot from the RAID array. BUT this is temporary - you must do this process EVERY time you boot, so you always have to have the driver disk available - and you better have a spare in case the first one gets damaged.
 

mdgtifan

Distinguished
Jan 6, 2010
2
0
18,510
Paperdoc,

Thanks for the detailed response. It sounds like this is more involved and prone to more problems than I anticipated. My reason for going to RAID 0 was solely to improve performance. I save all files to our server daily so back-up is not an issue. Perhaps I'll just stick with what I've got and be happy.
 

Paperdoc

Polypheme
Ambassador
You should look for more detail on the claim of "better performance" from a RAID0. It is a common belief, especially among gamers (I'm not one) with a basis in real fact some time ago. But current HDD's (like your 10,000 rpm unit) are so fast the improvement obtained by going to RAID0 is quite small. Moreover, it depends to a large extent on your use patterns. For overall speed of access to files, a lot of the time taken is in the first two steps: move the head to the right track, then wait for the disk to turn under the head until the correct sector comes around. Once those are finished, the actual data transfer speed on most current drives (that is, from head to buffer and available for transmission to the CPU) is actually faster than the CPU can handle it, so a "faster" HDD at this stage is no help at all. But IF your use involves frequently finding many small files, the initial 2 stages of seeking the file starting point can be more significant than if your use is continuously using one long file. It is this pattern of frequent use of many small files that actually is common among gaming enthusiasts, so they tend to see better improvement that others do. Besides that, they also tend to want even the smallest improvement in game speed.

So, look at your own uses of the computer, and look up on the web (places like Tom's, for example) for real-world actual measured values of disk access times for various tasks, using various types of disk systems. Balance that against the risk of data loss in RAID0 systems and make your own decision on the right path.

I said, "risk of data loss in RAID0 systems". In case you have not looked at this, here's a brief explanation. A RAID0 system puts alternating halves of a data stream onto two separate drives, and retrieves them the same way. This means that BOTH drives must be operating error-free for it to work. If either drive has corrupt data in a sector, that file is corrupt. If either drive has a significant failure making all of its data unavailable, then ALL of the data on the entire RAID0 array is gone! Since BOTH drives must be error-free, this means that the probability of failure of a RAID0 array is twice as high as failure of a single drive. Now, granted, drives these days are VERY reliable. Still, people using RAID0 have a stronger motivation to make good regular backups of their drive (array), because any significant failure means TOTAL data loss.