Bob Friesenhahn wrote:
On Fri, 21 May 2010, Don wrote:

You could literally split a sata cable and add in some capacitors for just the cost of the caps themselves. The issue there is whether the caps would present too large a current drain on initial charge up- If they do then you need to add in charge controllers and you've got the same problems as with a LiPo battery- although without the shorter service life.

Electricity does run both directions down a wire and the capacitor would look like a short circuit to the supply when it is first turned on. You would need some circuitry which delays applying power to the drive before the capacitor is sufficiently charged, and some circuitry which shuts off the flow of energy back into the power supply when the power supply shuts off (could be a silicon diode if you don't mind the 0.7 V drop).

Bob

You can also use an appropriately wired field effect transistor (FET) / MOSFET of sufficient current carrying capacity as a one-way valve (diode) that has minimal voltage drop.
More:
http://electronicdesign.com/article/power/fet-supplies-low-voltage-reverse-polarity-protecti.aspx
http://www.electro-tech-online.com/general-electronics-chat/32118-using-mosfet-diode-replacement.html


In regard to how long do you need to continue supplying power...that comes down to how long does the SSD wait before flushing cache to flash. If you can identify the maximum write cache flush interval, and size the battery or capacitor to exceed that maximum interval, you should be okay. The maximum write cache flush interval is determined by a timer that says something like "okay, we've waited 5 seconds for additional data to arrive to be written. None has arrived in the last 5 seconds, so we're going to write what we already have to better ensure data integrity, even though it is suboptimal from a absolute performance perspective." In conventional terms of filling city buses...the bus leaves when it is full of people, or 15 minutes has passed since the last bus left.

Does anyone know if there is a way to directly or indirectly measure the write caching flush interval? I know cache sizes can be found via performance testing, but what about write intervals?
_______________________________________________
zfs-discuss mailing list
zfs-discuss@opensolaris.org
http://mail.opensolaris.org/mailman/listinfo/zfs-discuss

Reply via email to