Multimedia Systems

, Volume 25, Issue 6, pp 695–708 | Cite as

Lifetime-aware solid-state disk (SSD) cache management for video servers

  • Jungwoo Lee
  • Hwangje Han
  • Sungjin Lee
  • Minseok SongEmail author
Regular Paper


Solid-state disks (SSDs) are now being used as enterprise storage servers owing to their technical merits such as low power consumption, shock resistance, and excellent random read performance. To handle the large storage requirements for video data, they can be used as a cache for hard disk drives (HDDs) in video servers, but this poses several questions such as (1) which video segments can be cached on SSD, (2) how to guarantee the lifetime of SSD, and (3) how to make combined use of dynamic random-access memory (DRAM) and SSD for caching. We start by introducing the concept of caching gain to express the amount of disk bandwidth saved by caching, and go on to propose three algorithms: (1) a dynamic programming algorithm that allows for segment popularity in determining which videos should have initial segments (prefixes) stored on the SSD; (2) a throttling algorithm, which limits the number of cache replacements to guarantee the specified lifetime while maximizing caching gain using a parametric search technique; (3) an algorithm that determines the intervals between pairs of consecutive requests to be stored on the DRAM. We quantitatively explore the effect of this caching scheme through simulations, which show that: (1) prefix caching is quite effective for disk bandwidth saving, (2) our throttling algorithm guarantees the lifetime of the SSD, and (3) DRAM caching can be effectively combined with SSD caching with the aim of maximizing overall caching gain.


Video storage Solid-state disks Video caching 



This work was supported by Next-Generation Information Computing Development Program through National Research Foundation of Korea (NRF) funded by the Ministry of Science, ICT (2017M3C4A7080248) and the Basic Science Research Program through the National Research Foundation of Korea (NRF) funded by the Ministry of Education, Science and Technology under Grant NRF-2015R1D1A1A01058646. This work was also supported by INHA UNIVERSITY Research Grant. Minseok Song is a corresponding author.


  1. 1.
    Gao, G., Hu, H., Wen, Y., Westphal, C.: Resource provisioning and profit maximization for transcoding in clouds: a two-timescale approach. IEEE Trans. Multimed. 19(4), 836–848 (2017)CrossRefGoogle Scholar
  2. 2.
    YouTube bandwdith analysis article (2006). Accessed 24 May 2019
  3. 3.
    Zhang, G., Liu, W., Hei, X., Cheng, W.: Unreeling xunlei kankan: understanding hybrid CDN-P2P video-on-demand streaming. IEEE Trans. Multimed. 17(2), 229–242 (2015)CrossRefGoogle Scholar
  4. 4.
    Li, Z., Wu, Q., Salamatian, K., Xie, G.: Video delivery performance of a large-scale VoD systems and its implication on content delivery. IEEE Trans. Multimed. 17(6), 880–892 (2015)CrossRefGoogle Scholar
  5. 5.
    Hu, Y., Niu, D., Li, Z.: A geometric approach to server selection for interactive video streaming. IEEE Trans. Multimed. 18(5), 840–851 (2016)CrossRefGoogle Scholar
  6. 6.
    Ryu, M., Kim, H., Ramachandran, U.: Impact of flash memory on video-on-demand storage: analysis and tradeoffs. In: Proceedings of the ACM Multimedia Systems, pp. 175–186 (2011)Google Scholar
  7. 7.
    Khatib, M., Bandic, Z.: PCAP: performance-aware power capping for the disk drive in the cloud. In: Proceedings of the USENIX File and Storage Technologies, pp. 227–240 (2016)Google Scholar
  8. 8.
    Ryu, Y.: A flash translation layer for NAND flash-based multimedia storage devices. IEEE Trans. Multimed. 13(3), 563–572 (2011)CrossRefGoogle Scholar
  9. 9.
    Chen, X., Chen, W., Member, Z. Lu, Long, P., Yang, S., Wang, Z.: A duplication-aware SSD-based cache architecture for primary storage in virtualization environment. IEEE Syst. J. 11(4), 2578–2589 (2017)CrossRefGoogle Scholar
  10. 10.
    10TB Western Digital HDD specification. Accessed 24 May 2019
  11. 11.
    4TB Samsung SSD specification. Accessed 24 May 2019
  12. 12.
    Salkhordeh, R., Ebrahimi, S., Asadi, H.: ReCA: an efficient reconfigurable cache architecture for storage systems with online workload characterization. IEEE Trans. Parallel Distrib. Syst. 29(7), 1605–1620 (2018)CrossRefGoogle Scholar
  13. 13.
    Niu, J., Xu, J., Xie, L.: Hybrid storage systems: a survey of architectures and algorithms. IEEE Access 6(1), 13385–14406 (2018)CrossRefGoogle Scholar
  14. 14.
    Lee, S., Kim, T., Kim, K., Kim, J.: Lifetime management of flash-based SSDs using recovery-aware dynamic throttling. In: Proceedings of the USENIX conference on File and Storage Technologies, pp. 537–540 (2012)Google Scholar
  15. 15.
    Lee, S., Kim, J.: Effective lifetime-aware dynamic throttling for NAND flash-based SSDs. IEEE Trans. Comput. 65(4), 1331–1334 (2016)MathSciNetzbMATHGoogle Scholar
  16. 16.
    Grupp, L., Davis, J., Swanson, S.: The bleak future of NAND flash memory. In: Proceedings of the USENIX Conference on File and Storage Technologies, pp. 2–2 (2012)Google Scholar
  17. 17.
    Dan, A., Sitaram, D.: Multimedia caching strategies for heterogeneous application and server environments. Multimed. Tools Appl. 4(1), 279–312 (1997)CrossRefGoogle Scholar
  18. 18.
    Arteaga, D., Cabrera, J., Xu, J., Sundararaman, S., Machines, P., Zhao, M.: Cloudcache: on-demand flash cache management for cloud computing. In: Proceedings of the USENIX Conference on File and Storage Technologies, pp. 355–369 (2016)Google Scholar
  19. 19.
    Kang, W., Lee, S., Moon, B.: Flash-based extended cache for higher throughput and faster recovery. In: Proceedings of the ACM VLDB Conference, pp. 1615–1626 (2012)CrossRefGoogle Scholar
  20. 20.
    Meng, F., Zhou, L., Ma, X., Uttamchandani, S., Liu, D.: Vcacheshare: automated server flash cache space management in a virtualization environment. In: Proceedings of the USENIX Annual Technical Conference, pp. 133–144 (2014)Google Scholar
  21. 21.
    Kim, Y., Gupta, A., Urgaonkar, B., Berman, P., Sivasubramaniam, A.: Hybridstore: a cost-efficient, high-performance storage system combining SSDs and HDDs. In: Proceedings of the IEEE MASCOTS, pp. 227–236 (2011)Google Scholar
  22. 22.
    Boukhelef, D., Boukhalfa, K., Boukhobza, J., Ouarnoughi, H., Lemarchand, L.: COPS: cost based object placement strategies on hybrid storage system for DBaaS Cloud. In: Proceedings of the IEEE/ACM International Symposium on Cluster, Cloud and Grid Computing, pp. 659–664 (2017)Google Scholar
  23. 23.
    Wang, B., Jiang, J., Wu, Y., Yang, G., Li, K.: Accelerating MapReduce on commodity clusters: an SSD-empowered approach. IEEE Trans.Big Data 4(3), 396–407 (2018)CrossRefGoogle Scholar
  24. 24.
    Lin, M., Chen, R., Xiong, J., Li, X., Yao, Z.: Efficient sequential data migration scheme considering dying data for HDD/SSD hybrid storage systems. IEEE Access 5(1), 23366–23373 (2017)CrossRefGoogle Scholar
  25. 25.
    Xu, C., Wang, W., Zhou, D., Xie, T.: An SSD-HDD integrated storage architecture for write-once-read-once applications on clusters. In: Proceedings of the IEEE International Conference on Cluster Computing, pp. 74–77 (2015)Google Scholar
  26. 26.
    Yoon, H., Woo, Y., Lee, D., Moon, Y., Kwon, H.: Semiconductor storage device and method of throttling performance of the same. US patent, US20120047317 (2012)Google Scholar
  27. 27.
    Tressler, G., Walls, A.: Enabling throttling on average write throughput for solid state storage devices. US patent, US20130086302 (2013)Google Scholar
  28. 28.
    Liu, J., Chai, Y., Qin, X., Liu, Y.: Endurable SSD-based read cache for improving the performance of selective restore from deduplication systems. J. Comput. Sci. Technol. 33(2), 58–78 (2018)CrossRefGoogle Scholar
  29. 29.
    Manjunath, R., Xie, T.: Dynamic data replication on flash SSD assisted video-on-demand servers. In: Proceedings of the International Conference on Computing, Networking and Communications, pp. 502–506 (2012)Google Scholar
  30. 30.
    Ryu, M., Kim, H., Ramachandran, U.: Why are state-of-the-art flash-based multi-tiered storage systems performing poorly for http video streaming? In: Proceedings of the ACM NOSSDAV Conference, pp. 3–8 (2012)Google Scholar
  31. 31.
    Jeong, Y., Park, Y., Seo, K., Yoo, J., Park, K.: An SSD-based storage system for an interactive media server using video frame grouping. ETRI J. 35(1), 69–79 (2013)CrossRefGoogle Scholar
  32. 32.
    Ryu, M. Ramachandran, U.: Flashstream: a multi-tiered storage architecture for adaptive HTTP streaming. In Proceedings of the ACM Multimedia Conference, pp. 313–322 (2013)Google Scholar
  33. 33.
    Ho, C., Chen, H., Chang, Y., Chang, Y.: Energy-aware data placement strategy for SSD-assisted streaming video servers. In: Proceedings of the IEEE Non-Volatile Memory Systems and Applications Symposium (2014)Google Scholar
  34. 34.
    Zhang, X., Xiong, D., Zhao, K., Chen, C., Zhang, T.: Realizing low-cost flash memory based video caching in content delivery systems. IEEE Trans. Circuits Syst. Video Technol. 28(4), 984–996 (2018)CrossRefGoogle Scholar
  35. 35.
    Song, M.: Minimizing power consumption in video servers by the combined use of solid-state disks and multi-speed disks. IEEE Access 6(1), 25737–25746 (2018)CrossRefGoogle Scholar
  36. 36.
    Lee, J., Ahn, J., Park, C., Kim, J.: DTStorage: dynamic tape-based storage for cost-effective and highly-available streaming service. In: Proceedings of the IEEE/ACM International Symposium on Cluster, Cloud and Grid Computing, pp. 376–387 (2016)Google Scholar
  37. 37.
    Kim, T., Kim, E.: Hybrid storage-based caching strategy for content delivery network services. Multimed. Tools Appl. 74(5), 1697–1709 (2015)CrossRefGoogle Scholar
  38. 38.
    Ling, Q., Xu, L., Yan, J., Zhang, Y., Li, F.: A feedback-based adaptive data migration method for hybrid storage VOD caching systems. Multimed. Tools Appl. 75(1), 165–180 (2016)CrossRefGoogle Scholar
  39. 39.
    Lee, J., Song, M.: Cache management for video servers by the combined use of DRAM and SSD. In: Proceedings of the IEEE International Symposium on Multimedia, pp. 537–540 (2016)Google Scholar
  40. 40.
    He, S., Wang, Y., Sun, X.: Improving performance of parallel I/O systems through selective and layout-aware SSD cache. IEEE Trans. Parallel Distrib. Syst. 27(10), 2940–2952 (2016)CrossRefGoogle Scholar
  41. 41.
    Marvell NVMe SSD specification. Accessed 24 May 2019
  42. 42.
    Zhou, Y., Chen, L., Yang, C., Chiu, D.: Video popularity dynamics and its implications for replication. IEEE Trans. Multimed. 17(8), 1273–1285 (2015)CrossRefGoogle Scholar
  43. 43.
    Yu, H., Zheng, D., Zhao, B. Y. , Zheng, W.: Understanding user behavior in large-scale video-on-demand systems. In Proceedings of the ACM Eurosys, pp. 333–344 (2006)Google Scholar
  44. 44.
    Lim, S., Ko, Y., Jung, G., Kim, J., Suei, P.L., Yeh, M.Y., Kuo, T.W.: Inter-chunk popularity-based edge-first caching in content-centric networking. IEEE Commun. Lett. 18(8), 1331–1334 (2014)CrossRefGoogle Scholar
  45. 45.
    Kleinrock, L.: Theory, Volume 1, Queueing Systems. Wiley-Interscience, New York (1975)zbMATHGoogle Scholar
  46. 46.
    Cha, M., Kwak, H., Rodriguez, P., Ahn, Y., Moon, S.: Analyzing the video popularity characteristics of large-scale user generated content systems. IEEE/ACM Trans. Netw. 17(5), 1357–1370 (2009)CrossRefGoogle Scholar
  47. 47.
    Megiddo, N.: Applying parallel computation algorithms in the design of serial algorithms. J. ACM 30(4), 852–865 (1983)MathSciNetCrossRefGoogle Scholar
  48. 48.
    Dan, A., Sitaram, D., Shahabuddin, P.: Dynamic batching policies for an on-demand video server. ACM/Springer Multimed. Syst. J. 4(3), 112–121 (1996)CrossRefGoogle Scholar
  49. 49.
    Seagate HDD benchmark results. Accessed 24 May 2019
  50. 50.
    Guo, Y., Ge, Z., Dan, A., Urgaonkar, B., Shenoy, P., Towsley, D.: Dynamic cache reconiguration strategies for a cluster-based streaming proxy. In: Proceedings of the International Workshop on Web Content Caching and Distribution, pp. 139–157 (2004)Google Scholar
  51. 51.
    Wu, J., Li, B.: Keep cache replacement simple in peer-assisted VoD systems. In: Proceedings of the IEEE International Conference on Computer Communications, pp. 2591–2595 (2009)Google Scholar
  52. 52.
    Li, S., Xuy, J., Schaarz, M., Lix, W.: Popularity-driven content caching. In: Proceedings of the IEEE International Conference on Computer Communications (2016)Google Scholar
  53. 53.
    Marvell PCIe 2.0 SATA controllers specification. Accessed 24 May 2019
  54. 54.
  55. 55.
    Samsung SSD 840 benchmark test results. Accessed 24 May 2019
  56. 56.
    Hu, X., Eleftheriou, E., Haas, R., Iliadis, I., Pletka, R.: Write amplification analysis in flash-based solid state drives. In Proceedings of the ACM International Systems and Storage Conference, pp. 74–77 (2009)Google Scholar
  57. 57.
    Kim, T., Hahn, S., Lee, S., Hwang, J., Lee, J., Kim, J.: PCStream: automatic stream allocation using program contexts. In: Proceedings of the USENIX HotStorage Workshop (2018)Google Scholar

Copyright information

© Springer-Verlag GmbH Germany, part of Springer Nature 2019

Authors and Affiliations

  1. 1.TmaxSoftSeoulSouth Korea
  2. 2.Department of Computer EngineeringInha UniversityIncheonSouth Korea
  3. 3.Department of Information and Communication EngineeringDGISTDaeguSouth Korea

Personalised recommendations