Abstract
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.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Lee, S.-W., Moon, B., Park, C.: Advances in Flash Memory SSD Technology for Enterprise Database Applications. In: SIGMOD Conference, pp. 863–870 (2009)
Lee, S.-W., Moon, B., Park, C., Kim, J.-M., Kim, S.-W.: A Case for Flash Memory SSD in Enterprise Database Applications. In: SIGMOD Conference, pp. 1075–1086 (2008)
TPC: TPC Benchmark C Standard Specification Revision 5.9. Transaction Processing Performance Council (2007)
Rosenblum, M., Ousterhout, J.K.: The Design and Implementation of a Log-Structured File System. ACM Trans. Comput. Syst. 10(1), 26–52 (1992)
Lee, S.-W., Moon, B.: Design of Flash-based DBMS: An In-page Logging Approach. In: SIGMOD Conference, pp. 55–66 (2007)
Intel: Understanding the Flash Translation Layer (FTL) Specification. Intel Corporation (1998)
Manning, C.: YAFFS: The NAND-specific Flash File System (2002), http://www.yaffs.net
Woodhouse, D.: JFFS: The Journalling Flash File System. In: Ottawa Linux Symposium (2001)
Tsirogiannis, D., Harizopoulos, S., Shah, M.A., Wiener, J.L., Graefe, G.: Query Processing Techniques for Solid State Drives. In: SIGMOD Conference, pp. 59–72 (2009)
Lv, Y., Cui, B., He, B., Chen, X.: Operation-aware Buffer Management in Flash-based Systems. In: SIGMOD Conference, pp. 13–24 (2011)
Li, Y., He, B., Luo, Q., Yi, K.: Tree Indexing on Flash Disks. In: ICDE (2009)
Wu, C.-H., Chang, L.-P., Kuo, T.-W.: An Efficient B-Tree Layer for Flash-Memory Storage Systems. In: Chen, J., Hong, S. (eds.) RTCSA 2003. LNCS, vol. 2968, pp. 409–430. Springer, Heidelberg (2004)
Debnath, B., Sengupta, S., Li, J.: FlashStore: High Throughput Persistent Key-Value Store. PVLDB 3(2), 1414–1425 (2010)
Debnath, B., Sengupta, S., Li, J.: SkimpyStash: RAM Space Skimpy Key-value Store on Flash-based Storage. In: SIGMOD Conference, pp. 25–36 (2011)
Kim, Y.-R., Whang, K.-Y., Song, I.-Y.: Page-differential Logging: An Efficient and DBMS-independent Approach for Storing Data into Flash Memory. In: SIGMOD Conference, pp. 363–374 (2010)
Bonnet, P., Bouganim, L.: Flash Device Support for Database Management. In: CIDR, pp. 1–8 (2011)
Nath, S., Gibbons, P.: Online Maintenance of Very Large Random Samples on Flash Storage. In: VLDB (2008)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2012 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Yang, R.J., Luo, Q. (2012). PTL: Partitioned Logging for Database Storage on Flash Solid State Drives. In: Bao, Z., et al. Web-Age Information Management. WAIM 2012. Lecture Notes in Computer Science, vol 7419. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-33050-6_11
Download citation
DOI: https://doi.org/10.1007/978-3-642-33050-6_11
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-33049-0
Online ISBN: 978-3-642-33050-6
eBook Packages: Computer ScienceComputer Science (R0)