PTL: Partitioned Logging for Database Storage on Flash Solid State Drives

We propose Partitioned Logging (PTL), a storage layout for databases on flash solid state drives. In PTL, we replace data writes with logging, and put data and logs into separate blocks. Moreover, we group data blocks into partitions so that updates on each partition are appended as log entries to one log block. This way, we can tune the partition size to balance the read and write performance based on the hardware and workload characteristics. We have implemented PTL in PostgreSQL, which involves moderate changes to the buffer manager, the storage manager, and the transaction manager. We have also developed an analytical model to determine the PTL parameter values. We have evaluated PTL using the standard TPC-C benchmark as well as homegrown workloads. The empirical results match our analytical analysis, and show a considerable improvement over both the traditional storage and a leading flash-based database storage scheme.

[1]  Il-Yeol Song,et al.  Page-differential logging: an efficient and DBMS-independent approach for storing data into flash memory , 2010, SIGMOD Conference.

[2]  Mendel Rosenblum,et al.  The design and implementation of a log-structured file system , 1991, SOSP '91.

[3]  Bingsheng He,et al.  Tree Indexing on Flash Disks , 2009, 2009 IEEE 25th International Conference on Data Engineering.

[4]  Jin Li,et al.  SkimpyStash: RAM space skimpy key-value store on flash-based storage , 2011, SIGMOD '11.

[5]  David Woodhouse,et al.  JFFS : The Journalling Flash File System , 2001 .

[6]  Bingsheng He,et al.  Operation-aware buffer management in flash-based systems , 2011, SIGMOD '11.

[7]  Jin Li,et al.  FlashStore , 2010, Proc. VLDB Endow..

[8]  Tei-Wei Kuo,et al.  An Efficient B-Tree Layer for Flash-Memory Storage Systems , 2003, RTCSA.

[9]  Jae-Myung Kim,et al.  A case for flash memory ssd in enterprise database applications , 2008, SIGMOD Conference.

[10]  Sang-Won Lee,et al.  Design of flash-based DBMS: an in-page logging approach , 2007, SIGMOD '07.

[11]  Suman Nath,et al.  Online maintenance of very large random samples on flash storage , 2008, The VLDB Journal.

[12]  Raghunath Othayoth Nambiar,et al.  Shaping the Landscape of Industry Standard Benchmarks: Contributions of the Transaction Processing Performance Council (TPC) , 2011, TPCTC.

[13]  Sang-Won Lee,et al.  Advances in flash memory SSD technology for enterprise database applications , 2009, SIGMOD Conference.

[14]  Philippe Bonnet,et al.  Flash Device Support for Database Management , 2011, CIDR.

[15]  Goetz Graefe,et al.  Query processing techniques for solid state drives , 2009, SIGMOD Conference.