Why do I need a raid battery pack?
Solution 1:
It allows the raid card to remember what is in its buffers ( that hasnt been sync'd to disk )
Its very important for people who need high data integrity.. Or to save your DB from certain types of corruption..
(Basically whats on disk, is on disk - so thats safe.. The problem is when the OS thinks its on disk but its actually not and in a RAID card buffer)
When the server starts up again, obviously those buffers get flushed to the disks.. So you have a point in time correlation with your disks and OS..
( otherwise you will just loose information - like a few database records, which you will never know. )
A UPS help sure.. but its not safe enough.. ever decent RAID card should have a BBU (Battery Backed Unit)
Solution 2:
Whilst I agree with Arenstar I've recently moved from battery-backed cache based controllers to flash-backed ones. This eradicates the urgency in moving the controller and any risk of accidentally disconnecting the battery during the movement. They seem to be about the same price roughly and actually have more cache anyway.
Solution 3:
Most RAID controllers that support Write caching, will not enable it without a battery backup pack. Imagine the damage a large 64 Megs of cached writes, not written to disk would do to a volume.
Without write caching, RAID5 controllers write performance drop by a factor of 5-10 times. (We had a Dell PERC 3 (The LSI, not Adaptec ones) that would write sustained at about 8 GB/hour with write cache off, but at 70-90 GB/hour with write caching on.
Solution 4:
A raid battery pack is a necessity depending of the cache configuration of your Raid array.
If you happen to use Write-back (when the controller informs the Os the data write was successful while still in cache, in opposition to write-through when the controller waits for the data to be on disk), you could lose crucial data should power fail, because all cached data would be lost.
You could still lose cached data if the controller itself fails though.