Transactional Flash

Vijayan Prabhakaran, Thomas L. Rodeheffer, and Lidong Zhou

Abstract

Transactional flash (TxFlash) is a novel solid-state drive (SSD) that uses flash memory and exports a transactional interface (WriteAtomic) to the higher-level software. The copy-on-write nature of the flash translation layer and the fast random access makes flash memory the right medium to support such an interface. We further develop a novel commit protocol called cyclic commit for TxFlash; the protocol has been specified formally and model checked.

Our evaluation, both on a simulator and an emulator on top of a real SSD, shows that TxFlash does not increase the flash firmware complexity significantly and provides transactional features with very small overheads (less than 1%), thereby making file systems easier to build. It further shows that the new cyclic commit protocol significantly outperforms traditional commit for small transactions (95% improvement in transaction throughput) and completely eliminates the space overhead due to commit records.

Details

Publication typeInproceedings
Published inProceedings of the 8th USENIX Symposium on Operating Systems Design and Implementation (OSDI ’08)
URLhttp://www.usenix.org/events/osdi08/tech/full_papers/prabhakaran/prabhakaran.pdf
PublisherUSENIX
> Publications > Transactional Flash