Using Solid State Drives as a Mid-Tier Cache in Enterprise Database OLTP Applications

  • Badriddine M. Khessib
  • Kushagra Vaid
  • Sriram Sankar
  • Chengliang Zhang
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6417)


When originally introduced, flash based solid state drives (SSD) exhibited a very high random read throughput with low sub-millisecond latencies. However, in addition to their steep prices, SSDs suffered from slow write rates and reliability concerns related to cell wear. For these reasons, they were relegated to a niche status in the consumer and personal computer market. Since then, several architectural enhancements have been introduced that led to a substantial increase in random write operations as well as a reasonable improvement in reliability. From a purely performance point of view, these high I/O rates and improved reliability make the SSDs an ideal choice for enterprise On-Line Transaction Processing (OLTP) applications. However, from a price/performance point of view, the case for SSDs may not be clear. Enterprise class SSD Price/GB, continues to be at least 10x higher than conventional magnetic hard disk drives (HDD) despite considerable drop in Flash chip prices.

We show that a complete replacement of traditional HDDs with SSDs is not cost effective. Further, we demonstrate that the most cost efficient use of SSDs for OLTP workloads is as an intermediate persistent cache that sits between conventional HDDs and memory, thus forming a three-level memory hierarchy. We also discuss two implementations of such cache: hardware or software. For the software approach, we discuss our implementation of such a cache in an in-house database system. We also describe off-the shelf hardware solutions. We will develop a Total Cost of Ownership (TCO) model for All-SSD and All-HDD configurations. We will also come up with a modified OLTP benchmark that can scale IO density to validate this model. We will also show how such SSD cache implementations could increase the performance of OLTP applications while reducing the overall system cost.


Solid State Disks OLTP performance SSD caching DBMS buffer pool management 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Lee, S.-W., Moon, B., Park, C., Kim, J.-M., Kim, S.-W.: A Case for Flash Memory SSD in Enterprise Database Applications. In: Proceedings of the ACM SIGMOD, pp. 1075–1086 (2008)Google Scholar
  2. 2.
    Tsirogiannis, D., Harizopoulos, S., Shah, M.A., Wiener, J.L., Graefe, G.: Query processing techniques for solid state drives. In: Proceedings of the 35th SIGMOD International Conference on Management of Data, Providence, Rhode Island, USA, June 29-July 02 (2009)Google Scholar
  3. 3.
    Janukowicz, J., Reinsel, D., Rydning, J.: Worldwide solid state drive 2008-2012 forecast and analysis. IDC, Technical Report 212736 (2008)Google Scholar
  4. 4.
    Hetzler, S.R.: The storage chasm: Implications for the future of HDD and solid state storage (December 2008),
  5. 5.
  6. 6.
    Koltsidas, I., Viglas, S.D.: Flashing up the storage layer. Proc. VLDB Endow. 1(1), 514–525 (2008)CrossRefGoogle Scholar
  7. 7.
    Kgil, T., Roberts, D., Mudge, T.: Improving NAND Flash Based Disk Caches. In: Proceedings of the 35th International Symposium on Computer Architecture, June 21-25, pp. 327–338. IEEE Computer Society, Washington (2008)Google Scholar
  8. 8.
    Miller, E.L., Brandt, S.A., Long, D.D.: HeRMES: High-Performance Reliable MRAM-Enabled Storage. In: Proceedings of the Eighth Workshop on Hot Topics in Operating Systems, HOTOS, May 20-22, p. 95. IEEE Computer Society, Washington (2001)CrossRefGoogle Scholar
  9. 9.
    Lin, S., Zeinalipour-Yazti, D., Kalogeraki, V., Gunopulos, D., Najjar, W.A.: Efficient indexing data structures for flash-based sensor devices. Trans. Storage 2(4), 468–503 (2006)CrossRefGoogle Scholar
  10. 10.
    Moshayedi, M., Wilkison, P.: Enterprise SSDs. Queue 6(4), 32–39 (2008)CrossRefGoogle Scholar
  11. 11.
    Narayanan, D., Thereska, E., Donnelly, A., Elnikety, S., Rowstron, A.: Migrating server storage to SSDs: analysis of tradeoffs. In: Proceedings of the 4th ACM European Conference on Computer Systems, EuroSys 2009, Nuremberg, Germany, April 01 - 03, pp. 145–158. ACM, New York (2009)Google Scholar
  12. 12.
  13. 13.
    Lee, S.-W., Moon, B.: Design of Flash-based DBMS: an In-Page Logging Approach. In: Proceedings of the ACM SIGMOD, pp. 55–66 (2007)Google Scholar
  14. 14.
    Park, S.-Y., Jung, D., Kang, J.-U., Kim, J.-S., Lee, J.: CFLRU: a Replacement Algorithm for Flash Memory. In: The 2006 International Conference on Compilers, Architecture and Synthesis for Embedded Systems (CASES 2006), pp. 234–241 (October 2006)Google Scholar
  15. 15.
    Poess, M., Nambiar, R.O.: Energy Cost, The Key Challenge of Today’s Data Centers: A Power Consumption Analysis of TPC-C Results. In: Proceedings of VLDB (2008)Google Scholar
  16. 16.
  17. 17.
    Kavalanekar, S., Narayanan, D., Sankar, S., Thereska, E., Vaid, K., Worthington, B.: Measuring Database Performance in Online Services: A Trace-Based Approach. In: Nambiar, R., Poess, M. (eds.) TPCTC 2009. LNCS, vol. 5895, pp. 132–145. Springer, Heidelberg (2009)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2011

Authors and Affiliations

  • Badriddine M. Khessib
    • 1
  • Kushagra Vaid
    • 1
  • Sriram Sankar
    • 1
  • Chengliang Zhang
    • 1
  1. 1.Microsoft CorporationRedmondUSA

Personalised recommendations