Lifetime-aware solid-state disk (SSD) cache management for video servers
- 143 Downloads
Abstract
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.
Keywords
Video storage Solid-state disks Video cachingNotes
Acknowledgements
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.
References
- 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.YouTube bandwdith analysis article (2006). http://blog.forret.com/2006/05/youtube-bandwidth-terabytes-per-day/. Accessed 24 May 2019
- 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.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.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.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.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.Ryu, Y.: A flash translation layer for NAND flash-based multimedia storage devices. IEEE Trans. Multimed. 13(3), 563–572 (2011)CrossRefGoogle Scholar
- 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.10TB Western Digital HDD specification. https://www.amazon.com/Red-10TB-Hard-Disk-Drive/dp/B0719498XY/. Accessed 24 May 2019
- 11.4TB Samsung SSD specification. https://www.amazon.com/Samsung-2-5-Inch-Internal-MZ-75E4T0B-AM/dp/B01G844OOO/. Accessed 24 May 2019
- 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.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.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.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.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.Dan, A., Sitaram, D.: Multimedia caching strategies for heterogeneous application and server environments. Multimed. Tools Appl. 4(1), 279–312 (1997)CrossRefGoogle Scholar
- 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.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.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.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.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.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.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.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.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.Tressler, G., Walls, A.: Enabling throttling on average write throughput for solid state storage devices. US patent, US20130086302 (2013)Google Scholar
- 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.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.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.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.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.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.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.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.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.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.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.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.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.Marvell NVMe SSD specification. https://www.marvell.com/storage/ssd/. Accessed 24 May 2019
- 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.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.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.Kleinrock, L.: Theory, Volume 1, Queueing Systems. Wiley-Interscience, New York (1975)zbMATHGoogle Scholar
- 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.Megiddo, N.: Applying parallel computation algorithms in the design of serial algorithms. J. ACM 30(4), 852–865 (1983)MathSciNetCrossRefGoogle Scholar
- 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.Seagate HDD benchmark results. https://hdd.userbenchmark.com/Seagate-Barracuda-Pro-10TB-2016/Rating/3901/. Accessed 24 May 2019
- 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.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.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.Marvell PCIe 2.0 SATA controllers specification. https://www.marvell.com/storage/system-solutions/sata-controllers/pcie-2-sata-controllers/. Accessed 24 May 2019
- 54.Samsung SSD 960 PRO NVMe M.2 specification. https://www.samsung.com/us/computing/memory-storage/solid-state-drives/ssd-960-pro-m-2-2tb-mz-v6p2t0bw/. Accessed 24 May 2019
- 55.Samsung SSD 840 benchmark test results. https://www.anandtech.com/show/6459/samsung-ssd-840-testing-the-endurance-of-tlc-nand/. Accessed 24 May 2019
- 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.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