Supporting System Consistency with Differential Transactions in Flash-Based SSDs

Abstract
Embedded transaction design inside solid state drives (SSDs) is an attractive way to support system consistency with low overhead due to the no-overwrite property of flash memory. Recent research proposes shadow paging variants to reduce write traffic to SSDs for longer lifetime while leveraging the random performance of SSDs. However, writes in transactions usually are small, and the page-aligned shadow paging protocols still incur high write amplification, which hurts SSD lifetime. In this paper, we propose an embedded transaction protocol, DiffTx, which differentially logs partial page updates in a write-ahead logging way and writes full page updates in a shadow paging way, aiming at low write amplification. DiffTx further improves transaction performance using two techniques. First, by clustering mapping metadata of full page updates with differential data of partial page updates in a single record, DiffTx tracks pages of each transaction at low overhead. Second, DiffTx removes the write ordering on commit by delaying the completeness check of writes, leveraging the clean-state write property of flash memory. Experiments show that DiffTx improves throughput by 25.9 percent and halves write traffic on average compared to TxFlash, a typical embedded transaction protocol for flash memory.
Funding Information
  • National Natural Science Foundation of China (61433008, 61327902)
  • National High Technology Research and Development Program of China (2013AA013201)
  • Samsung Electronics Co., Ltd.
  • Tsinghua-Tencent Joint Laboratory for Internet Innovation Technology
  • Tsinghua University Initiative Scientific Research Program

This publication has 16 references indexed in Scilit: