I have a RAID hardware configuration question: I have an older Compaq ML370 server that has built-in hot swap bays for 6 Ultra3 SCSI drives. I also have an external Compaq array that houses 14 Ultra3 drives. I have two SmartArray 5300 controllers that each have two channels.
I plan to create the following volumes: slots 0/1 on the server will be a mirrored system partition. Slots 2, 3, 4 and 5 on the server will be a single Raid 5 data partition. Slots 0-13 on the external array will be one big Raid 5 data partition.
Is there any benefit to using one Raid controller for the internal drives and the other for the external array? Or is using the one controller with channel 1 for the internal drives and channel 2 for the external drives acceptable?
The server will be running Windows 2003 Enterprise and will be running SQL server.
First, lets fix your internal drive situation.
Id create at least two mirrored volumes. One for OS and the other for transaction logs. Its even recommended that TempDB be located on a seperate mirror so I'd say follow that recommendation - especially if your database is highly active. One thing to keep in mind with regards to RAID5 is that it requires more IO than other common RAID levels for write operations. After reading the new data from the host, the old data and parity need to be read, afterwhich the new parity is calculated and THEN the new data and parity can be written. So essentially, we are dealing with 4 IO operations for a single write. Now that's just IO. There is also a small deal of latency because the controller has the calcuate the new parity and properly handle coherency.
Secondly you should use both controllers. Reason is bandwidth saturation. If each of your drives can do minimum 60MB/s sustained, then you'd saturate all the bandwidth on that channel fairly quickly. Secondly is IO saturation. A single controller can handle only so much IO. Taking into consideration that you are doing RAID5, it's important to keep your controllers IO limit in mind.
Now with respect to the single large array. I would suggest not using all 14 drives in that manner. The strongest argument I give is rebuild time. If your array is flagged dirty and needs to be rebuilt, or needs a consistency check, the larger the array, the more time it takes! This can make you pretty nervous because in my experience, this is when aging drives are most likely to give up the ghost. I would say use RAID10 if your controller supports RAID10 proper. Otherwise, I'd desginate two arrays off of those 14 drives - each with a hot spare if you can spare the capacity.
Hope that helps.