在RAID Controller中,processor、memory和Cache Battery是非常关键的三个部件;关系到Controller的性能和安全性。我们今天暂时讨论Cache Battery的技术问题。
大家都知道存储设备中存放的都是非常关键的数据和业务系统,用户也是为了保护数据安全和性能才采用存储。
所以,存储设备中采用了一系列冗余措施,以提高容错性能。
存储在运行的时候,memory一般采用mirror的方式,保护运行数据。但是,如果意外掉电,即使是很短的时间,也会造成memory中未完成数据丢失。厂商们纷纷采用Battery来实现数据保护。

Compaq的MA8000系列存储采用Cache battery的方式给memory供电,时间大约是70小时左右。在意外掉电的情况下,Cache Battery会持续给memory供电,防止memory中没有写入硬盘的数据丢失;在存储系统恢复供电之后,这些为写入的数据会优先写入硬盘。
但是,如果某些内存中的交易数据本身就没有完成,即使存在内存中;系统也会认为是无效数据,就需要通过controller的清除命令来清楚所有内存数据。
Dell的PV660F和650F,以及CX系列;都是采用SPS来供电。但是它的工作原理不太一样。在系统掉电之后,SPS的Battery会继续给Controller及DPE供电,让Controller继续将memory中的数据写入硬盘,时间大概是3分钟左右,已经足够。但是,它只能给DPE中的数据供电;也就是说,如果要写入数据的目标是其他DAE,那就不能写入。只有保护DPE中的数据。