A method of preventing data loss in a data storage system includes
supplying write data to a high speed volatile write buffer and supplying
electrical power from an energy storage device upon detection of a
primary power loss event. The backup electrical power is supplied to the
write buffer and nonvolatile cache. Under backup power, the write data is
transferred into the nonvolatile cache and the backup power is removed.
Upon regaining main power, a data presence indication triggers a transfer
of the write data from the nonvolatile cache to the long term storage
media. The method may be implemented for a system to protect it from
inadvertent power losses or it may implemented in a system where the long
term storage device is power cycled to save power. The energy storage
device is not necessarily needed in the power cycled system unless power
failure protection is also desired.