skip to main content
10.1145/3579370.3594773acmconferencesArticle/Chapter ViewAbstractPublication PagessystorConference Proceedingsconference-collections
research-article

Elastic RAID: Implementing RAID over SSDs with Built-in Transparent Compression

Published:22 June 2023Publication History

ABSTRACT

This paper studies how RAID (redundant array of independent disks) could take full advantage of modern SSDs (solid-state drives) with built-in transparent compression. In current practice, RAID users are forced to choose a specific RAID level (e.g., RAID 10 or RAID 5) with a fixed storage cost vs. speed performance trade-off. The commercial market is witnessing the emergence of a new family of SSDs that can internally perform hardware-based lossless compression on each 4KB LBA (logical block address) block, transparent to host OS and user applications. Beyond straightforwardly reducing the RAID storage cost, such modern SSDs make it possible to relieve RAID users from being locked into a fixed storage cost vs. speed performance trade-off. In particular, RAID systems could opportunistically leverage higher-than-expected runtime user data compressibility to enable dynamic RAID level conversion to improve the speed performance without compromising the effective storage capacity. This paper presents techniques to enable and optimize the practical implementation of such elastic RAID systems. We implemented a Linux software-based elastic RAID prototype that supports dynamic conversion between RAID 5 and RAID 10. Compared with a baseline software-based RAID 5, under sufficient runtime data compressibility that enables the conversion from RAID 5 to RAID 10 over 60% of user data, the elastic RAID could improve the 4KB random write IOPS (I/O per second) by 42% and 4KB random read IOPS in degraded mode by 46%, while maintaining the same effective storage capacity.

References

  1. Mohammadamin Ajdari, Pyeongsu Park, Joonsung Kim, Dongup Kwon, and Jangwoo Kim. 2019. CIDR: A cost-effective in-line data reduction system for terabit-per-second scale SSD arrays. In IEEE International Symposium on High Performance Computer Architecture (HPCA). IEEE, 28--41.Google ScholarGoogle ScholarCross RefCross Ref
  2. Sung Hoon Baek, Bong Wan Kim, Eui Joung Joung, and Chong Won Park. 2001. Reliability and performance of hierarchical RAID with multiple controllers. In ACM symposium on Principles of Distributed Computing. 246--254.Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Mahesh Balakrishnan, Asim Kadav, Vijayan Prabhakaran, and Dahlia Malkhi. 2010. Differential raid: Rethinking raid for SSD reliability. ACM Transactions on Storage (TOS) 6, 2 (2010), 1--22.Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Jeff Bonwick, Matt Ahrens, Val Henson, Mark Maybee, and Mark Shellenbaum. 2003. The zettabyte file system. In Proceedings of the Usenix Conference on File and Storage Technologies (FAST), Vol. 215.Google ScholarGoogle Scholar
  5. Broadcom RAID Controller Cards. [n.d.].. https://www.broadcom.com/products/storage/raid-controllers.Google ScholarGoogle Scholar
  6. Michael Burrows, Charles Jerian, Butler Lampson, and Timothy Mann. 1992. On-line data compression in a log-structured file system. ACM SIGPLAN Notices 27, 9 (1992), 2--9.Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Idan Burstein. 2021. Nvidia Data Center Processing Unit (DPU) Architecture. In IEEE Hot Chips Symposium (HCS). 1--20. Google ScholarGoogle ScholarCross RefCross Ref
  8. Canterbury Corpus. [n.d.]. . https://corpus.canterbury.ac.nz.Google ScholarGoogle Scholar
  9. Helen HW Chan, Yongkun Li, Patrick PC Lee, and Yinlong Xu. 2018. Elastic Parity Logging for SSD RAID Arrays: Design, Analysis, and Implementation. IEEE Transactions on Parallel and Distributed Systems 29, 10 (2018), 2241--2253.Google ScholarGoogle ScholarCross RefCross Ref
  10. Feng Chen, Tian Luo, and Xiaodong Zhang. 2011. CAFTL: A Content-Aware Flash Translation Layer Enhancing the Lifespan of Flash Memory based Solid State Drives.. In Proceedings of USENIX Conference on File and Storage Technologies (FAST), Vol. 11. 77--90.Google ScholarGoogle Scholar
  11. Peter M Chen, Edward K Lee, Garth A Gibson, Randy H Katz, and David A Patterson. 1994. RAID: High-performance, reliable secondary storage. ACM Computing Surveys (CSUR) 26, 2 (1994), 145--185.Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Xubin Chen, Yin Li, Jingpeng Hao, Hyunsuk Shin, Michael Suh, and Tong Zhang. 2019. Simultaneously reducing cost and improving performance of NVM-based block devices via transparent data compression. In Proceedings of the International Symposium on Memory Systems. 331--341.Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Xubin Chen, Ning Zheng, Shukun Xu, Yifan Qiao, Yang Liu, Jiangpeng Li, and Tong Zhang. 2021. KallaxDB: A Table-less Hash-based Key-Value Store on Storage Hardware with Built-in Transparent Compression. In Proceedings of the International Workshop on Data Management on New Hardware (DaMoN). 1--10.Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Derek Chiou, Eric Chung, and Susan Carrie. 2019. (Cloud) Acceleration at Microsoft. Tutorial at Hot Chips (2019).Google ScholarGoogle Scholar
  15. Dhananjoy Das, Dulcardo Arteaga, Nisha Talagala, Torben Mathiasen, and Jan Lindström. 2014. NVM Compression-Hybrid Flash-Aware Application Level Compression.. In Workshop on Interactions of NVM/Flash with Operating Systems and Workloads (INFLOW).Google ScholarGoogle Scholar
  16. Dell EMC PowerMax. [n.d.]. . https://delltechnologies.com/.Google ScholarGoogle Scholar
  17. Jon Elerath and Michael Pecht. 2008. A highly accurate method for assessing reliability of redundant arrays of inexpensive disks (RAID). IEEE Trans. Comput. 58, 3 (2008), 289--299.Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Jon G Elerath and Jiri Schindler. 2014. Beyond MTTDL: A closed-form RAID 6 reliability equation. ACM Transactions on Storage (TOS) 10, 2 (2014), 1--21.Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. Flexible I/O Tester. [n.d.]. . https://github.com/axboe/fio.Google ScholarGoogle Scholar
  20. E. F. Haratsch. 2019. SSD with Compression: Implementation, Interface and Use Case. In Flash Memory Summit.Google ScholarGoogle Scholar
  21. Mark Holland and Garth A Gibson. 1992. Parity declustering for continuous operation in redundant disk arrays. ACM SIGPLAN Notices 27, 9 (1992), 23--35.Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. HPE Nimble Storage. [n.d.]. . https://www.hpe.com/.Google ScholarGoogle Scholar
  23. Jian Huang, Anirudh Badam, Moinuddin K Qureshi, and Karsten Schwan. 2015. Unified address translation for memory-mapped SSDs with FlashMap. In Proceedings of the International Symposium on Computer Architecture (ISCA). 580--591.Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. IBM Storwize. [n.d.]. . https://www.ibm.com/.Google ScholarGoogle Scholar
  25. Soojun Im and Dongkun Shin. 2010. Flash-aware RAID techniques for dependable and high-performance flash memory SSD. IEEE Trans. Comput. 60, 1 (2010), 80--92.Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. William K Josephson, Lars A Bongo, Kai Li, and David Flynn. 2010. DFS: A file system for virtualized flash storage. ACM Transactions on Storage (TOS) 6, 3 (2010), 1--25.Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. Yannis Klonatos, Thanos Makatos, Manolis Marazakis, Michail D Flouris, and Angelos Bilas. 2012. Transparent online storage compression at the block-level. ACM Transactions on Storage (TOS) 8, 2 (2012), 1--33.Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. Yongkun Li, Patrick PC Lee, and John CS Lui. 2013. Stochastic analysis on RAID reliability for solid-state drives. In IEEE International Symposium on Reliable Distributed Systems. 71--80.Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. Linux mdraid. [n.d.]. . https://raid.wiki.kernel.org/.Google ScholarGoogle Scholar
  30. Fumio Machida, Ruofan Xia, and Kishor S Trivedi. 2015. Performability modeling for RAID storage systems by Markov regenerative process. IEEE Transactions on Dependable and Secure Computing 15, 1 (2015), 138--150.Google ScholarGoogle ScholarCross RefCross Ref
  31. Sangwhan Moon and AL Narasimha Reddy. 2013. Don't Let RAID Raid the Lifetime of Your SSD Array. In USENIX Workshop on Hot Topics in Storage and File Systems (HotStorage).Google ScholarGoogle Scholar
  32. Richard R. Muntz and John C. S. Lui. 1990. Performance Analysis of Disk Arrays under Failure. In International Conference on Very Large Data Bases (VLDB). 162--173.Google ScholarGoogle Scholar
  33. N. Muppalaneni and K. Gopinath. 2000. A multi-tier RAID storage system with RAID1 and RAID5. In Proceedings of International Parallel and Distributed Processing Symposium (IPDPS). 663--671. Google ScholarGoogle ScholarCross RefCross Ref
  34. David A Patterson, Garth Gibson, and Randy H Katz. 1988. A case for redundant arrays of inexpensive disks (RAID). In Proceedings of the ACM international conference on Management of data (SIGMOD). 109--116.Google ScholarGoogle ScholarDigital LibraryDigital Library
  35. Pure Storage FlashBlade. [n.d.]. . https://www.purestorage.com/.Google ScholarGoogle Scholar
  36. Yifan Qiao, Xubin Chen, Ning Zheng, Jiangpeng Li, Yang Liu, and Tong Zhang. 2022. Closing the B+-tree vs. LSM-tree Write Amplification Gap on Modern Storage Hardware with Built-in Transparent Compression. In USENIX Conference on File and Storage Technologies (FAST). 1--14.Google ScholarGoogle Scholar
  37. RAIDIX. [n.d.]. . https://www.raidix.com.Google ScholarGoogle Scholar
  38. Ohad Rodeh, Josef Bacik, and Chris Mason. 2013. BTRFS: The Linux B-tree filesystem. ACM Transactions on Storage (TOS) 9, 3 (2013), 1--32.Google ScholarGoogle ScholarDigital LibraryDigital Library
  39. Mohit Saxena, Michael M Swift, and Yiying Zhang. 2012. FlashTier: a lightweight, consistent and durable storage cache. In Proceedings of the ACM European conference on Computer Systems. 267--280.Google ScholarGoogle ScholarDigital LibraryDigital Library
  40. ScaleFlux Computational Storage. [n.d.]. . http://scaleflux.com.Google ScholarGoogle Scholar
  41. Abraham Silberschatz, Peter B Galvin, and Greg Gagne. 2013. Operating system concepts essentials. Wiley Publishing.Google ScholarGoogle Scholar
  42. Silesia Corpus. [n.d.]. . https://github.com/MiloszKrajewski/SilesiaCorpus.Google ScholarGoogle Scholar
  43. Kiran Srinivasan, Timothy Bisson, Garth R Goodson, and Kaladhar Voruganti. 2012. iDedup: latency-aware, inline data deduplication for primary storage.. In USENIX Conference on File and Storage Technologies (FAST). 1--14.Google ScholarGoogle Scholar
  44. Alexander Thomasian and Mario Blaum. 2009. Higher reliability redundant disk arrays: Organization, operation, and coding. ACM Transactions on Storage (TOS) 5, 3 (2009), 1--59.Google ScholarGoogle ScholarDigital LibraryDigital Library
  45. Derek Vadala. 2002. Managing RAID on Linux: Fast, Scalable, Reliable Data Storage. O'Reilly Media, Inc.Google ScholarGoogle Scholar
  46. Virtual Data Optimizer (VDO). [n.d.]. . https://github.com/dm-vdo/vdo.Google ScholarGoogle Scholar
  47. Jiguang Wan, Jibin Wang, Qing Yang, and Changsheng Xie. 2010. S2-RAID: A new RAID architecture for fast data recovery. In IEEE Symposium on Mass Storage Systems and Technologies (MSST). 1--9.Google ScholarGoogle ScholarDigital LibraryDigital Library
  48. Yan Wang, Xunrui Yin, and Xin Wang. 2014. MDR codes: A new class of RAID-6 codes with optimal rebuilding and encoding. IEEE Journal on Selected Areas in Communications 32, 5 (2014), 1008--1018.Google ScholarGoogle ScholarCross RefCross Ref
  49. John Wilkes, Richard Golding, Carl Staelin, and Tim Sullivan. 1996. The HP AutoRAID hierarchical storage system. ACM Transactions on Computer Systems (TOCS) 14, 1 (1996), 108--136.Google ScholarGoogle ScholarDigital LibraryDigital Library
  50. Guanying Wu and Xubin He. 2012. Delta-FTL: improving SSD lifetime via exploiting content locality. In Proceedings of the 7th ACM European Conference on Computer Systems (EuroSys). 253--266.Google ScholarGoogle ScholarDigital LibraryDigital Library
  51. Liping Xiang, Yinlong Xu, John CS Lui, and Qian Chang. 2010. Optimal recovery of single disk failure in RDP code storage systems. ACM SIGMETRICS Performance Evaluation Review 38, 1 (2010), 119--130.Google ScholarGoogle ScholarDigital LibraryDigital Library
  52. zlib. [n.d.]. . http://zlib.net.Google ScholarGoogle Scholar
  53. Aviad Zuck, Sivan Toledo, Dmitry Sotnikov, and Danny Harnik. 2014. Compression and SSDs: Where and how?. In Workshop on Interactions of NVM/Flash with Operating Systems and Workloads (INFLOW).Google ScholarGoogle Scholar

Index Terms

  1. Elastic RAID: Implementing RAID over SSDs with Built-in Transparent Compression

    Recommendations

    Comments

    Login options

    Check if you have access through your login credentials or your institution to get full access on this article.

    Sign in
    • Published in

      cover image ACM Conferences
      SYSTOR '23: Proceedings of the 16th ACM International Conference on Systems and Storage
      June 2023
      168 pages
      ISBN:9781450399623
      DOI:10.1145/3579370

      Copyright © 2023 ACM

      Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

      Publisher

      Association for Computing Machinery

      New York, NY, United States

      Publication History

      • Published: 22 June 2023

      Permissions

      Request permissions about this article.

      Request Permissions

      Check for updates

      Qualifiers

      • research-article

      Acceptance Rates

      SYSTOR '23 Paper Acceptance Rate12of30submissions,40%Overall Acceptance Rate94of285submissions,33%

      Upcoming Conference

      SYSTOR '24
      The 17th ACM International Systems and Storage Conference
      September 23 - 25, 2024
      Tel-Aviv , Israel
    • Article Metrics

      • Downloads (Last 12 months)179
      • Downloads (Last 6 weeks)13

      Other Metrics

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader