14

I'm trying to understand why one would add a batterypack to a raid card. It seems to me like if power goes down, running just the raid card is going to do little good: without power for HDs and motherboard, writing in-memory data isn't going to work anyway, right?

In addition, doesn't having a UPS facilitate this?

4 Answers 4

26

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)

21
  • +1 I would specify "every add-on RAID Card should have a BBU". Very few integrated RAID cards have them. Nov 18, 2010 at 11:16
  • 4
    Ohh i mean that by "decent".. onboard are never decent :P
    – Arenstar
    Nov 18, 2010 at 11:17
  • Does not change that every Raid card shold have one ;) Integratd are often pretty crappy.
    – TomTom
    Nov 18, 2010 at 11:17
  • Ah, that makes sense, it just keeps it in memory until the server comes back up.
    – user60704
    Nov 18, 2010 at 11:31
  • 1
    Right.. :D + its never a good idea to put all your eggs in one basket.. so you cant/shouldnt just rely on an UPS..
    – Arenstar
    Nov 18, 2010 at 11:32
5

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.

2
  • Same for adaptec - 5805 has a series that uses flash and a condensator.
    – TomTom
    Nov 18, 2010 at 12:24
  • Good point :D +1
    – Arenstar
    Nov 18, 2010 at 13:30
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.

2
  • 1
    I do believe in using the batteries when available, but am not overly concerned if a server doesn't have one. In practice, I've noticed that the cached writes have a very short life in the buffer. They make it to disk surprisingly quick even on our heavily utilized servers. It also doesn't solve the issue of the writes/processes that were only partially supplied to the card from the app & OS. Does it help, yes, it will help minimize one particular case of data corruption. However, there's still a LOT of other places for it to go wrong during a power outage. Nov 18, 2010 at 15:12
  • 1
    Ah but some RAID controllers REQUIRE a battery pack before they will even enable write caching. So of course, that is a different animal.
    – geoffc
    Nov 18, 2010 at 16:12
2

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.

You must log in to answer this question.