Abstract
Flash-based SSD RAID arrays are increasingly being deployed in data centers. Compared with HDD arrays, SSD arrays drastically enhance storage density and I/O performance, and reduce power and rack space. Nevertheless, SSDs suffer aging issues. Though prior studies have been conducted to address this disadvantage, effective techniques of RAID/SSD controllers are urgently needed to extend the lifetime of SSD arrays.
In this paper, we for the first time apply approximate storage via the interplay of RAID and SSD controllers to optimize the lifespan of SSD arrays. Our basic idea is to reuse faulty blocks (those contain pages with uncorrectable errors) to store approximate data (which can tolerate more errors). By relaxing the integrity of flash blocks, we observed that the endurance of NAND flash memory can be significantly boosted, thereby providing huge potentials to significantly extend the lifetime of SSDs. Based on this observation, we propose the use of an efficient space management scheme for data allocation and FTL strategies by coordinating the interplay of RAID and SSD controllers to optimize the lifetime of SSD arrays. We implemented a prototype, called FreeRAID, based on an SSD array simulator. Our experiments show that we can significantly increase the lifetime by up to 2.17× compared with conventional SSD-based RAID arrays.
- Rodolfo Azevedo, John D Davis, Karin Strauss, Parikshit Gopalan, Mark Manasse, and Sergey Yekhanin. 2013. Zombie memory: Extending memory lifetime by reviving dead blocks. In ACM SIGARCH Computer Architecture News. ACM, 452-463. Google ScholarDigital Library
- 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), 4. Google ScholarDigital Library
- Matias Bjørling. 2011. Extended FlashSim. (2011). https://github.com/MatiasBjorling/flashsimGoogle Scholar
- Ching-Che Chung and Hao-Hsiang Hsu. 2014. Partial parity cache and data cache management method to improve the performance of an SSD-based RAID. IEEE Transactions on Very Large Scale Integration (VLSI) Systems 22, 7 (2014), 1470- 1480.Google ScholarCross Ref
- Jinhua Cui, Youtao Zhang, Liang Shi, Chun Jason Xue, Weiguo Wu, and Jun Yang. 2017. ApproxFTL: On the Performance and Lifetime Improvement of 3D NAND Flash based SSDs. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems (2017).Google Scholar
- EMC. 2015. Introduction to the EMC XtremIO Storage Array. https://www.emc.com/collateral/white-papers/h11752-intro-to-XtremIO-array-wp.pdfGoogle Scholar
- Amherst Laboratory for Advanced System Software. 2012. Umass trace repository. http://traces.cs.umass.edu/Google Scholar
- Jie Guo, Zhijie Chen, Danghui Wang, Zili Shao, and Yiran Chen. [n. d.]. DPA: A data pattern aware error prevention technique for NAND flash lifetime extension. In 2014 19th Asia and South Pacific Design Automation Conference.Google Scholar
- Qing Guo, Karin Strauss, Luis Ceze, and Henrique S Malvar. 2016. High-density image storage using approximate memory cells. In ACM SIGPLAN Notices, Vol. 51. ACM, 413-426. Google ScholarDigital Library
- Aayush Gupta, Youngjae Kim, and Bhuvan Urgaonkar. 2009. DFTL: a flash translation layer employing demand-based selective caching of page-level address mappings. Vol. 44. ACM. Google ScholarDigital Library
- Djordje Jevdjic, Karin Strauss, Luis Ceze, and Henrique S Malvar. 2017. Approximate Storage of Compressed and Encrypted Videos. In Proceedings of the 22nd International Conference on Architectural Support for Programming Languages and Operating Systems. ACM, 361-373. Google ScholarDigital Library
- Xavier Jimenez, David Novo, and Paolo Ienne. 2014. Wear unleveling: improving NAND flash lifetime by balancing page endurance. In Proceedings of the 12th USENIX conference on File and Storage Technologies. USENIX Association, 47-59. Google ScholarDigital Library
- Jesung Kim, Jong Min Kim, Sam H Noh, Sang Lyul Min, and Yookun Cho. 2002. A space-efficient flash translation layer for CompactFlash systems. IEEE Transactions on Consumer Electronics 48, 2 (2002), 366-375. Google ScholarDigital Library
- Yongkun Li, Helen HWChan, Patrick PC Lee, and Yinlong Xu. 2016. Elastic parity logging for SSD RAID arrays. In 46th Annual IEEE/IFIP International Conference on Dependable Systems and Networks. IEEE, 49-60.Google ScholarCross Ref
- Yongkun Li, Patrick PC Lee, and John CS Lui. 2016. Analysis of reliability dynamics of SSD RAID. IEEE Trans. Comput. 65, 4 (2016), 1131-1144. Google ScholarDigital Library
- Duo Liu, Yi Wang, Zhiwei Qin, Zili Shao, and Yong Guan. 2012. A space reuse strategy for flash translation layers in SLC NAND flash memory storage systems. IEEE Transactions on Very Large Scale Integration (VLSI) Systems 20, 6 (2012), 1094-1107. Google ScholarDigital Library
- Youyou Lu, Jiwu Shu, and Weimin Zheng. 2013. Extending the lifetime of flash-based storage through reducing write amplification from file systems. In Proceedings of the 11th USENIX conference on File and Storage Technologies. USENIX Association, 257-270. Google ScholarDigital Library
- Sangwhan Moon and AL Reddy. 2016. Does RAID improve lifetime of SSD arrays? ACM Transactions on Storage (TOS) 12, 3 (2016), 11. Google ScholarDigital Library
- Yongseok Oh, Jongmoo Choi, Donghee Lee, and Sam H Noh. 2013. Improving performance and lifetime of the ssd raidbased host cache through a log-structured approach. In 1st Workshop on Interactions of NVM/FLASH with Operating Systems and Workloads. ACM, 5. Google ScholarDigital Library
- Zhiwei Qin, Yi Wang, Duo Liu, and Zili Shao. 2010. Demand-based block-level address mapping in large-scale NAND flash storage systems. In Proceedings of the eighth IEEE/ACM/IFIP international conference on Hardware/software codesign and system synthesis. ACM, 173-182. Google ScholarDigital Library
- Zhiwei Qin, Yi Wang, Duo Liu, Zili Shao, and Yong Guan. 2011. MNFTL: An efficient flash translation layer for MLC NAND flash memory storage systems. In Proceedings of the 48th Design Automation Conference. ACM, 17-22. Google ScholarDigital Library
- Pedro Reviriego, Juan A Maestro, and Mark F Flanagan. 2013. Error detection in majority logic decoding of euclidean geometry low density parity check (EG-LDPC) codes. IEEE transactions on very large scale integration (VLSI) systems 21, 1 (2013), 156-159. Google ScholarDigital Library
- Pooja Roy, Rajarshi Ray, Chundong Wang, and Weng FaiWong. 2014. Asac: Automatic sensitivity analysis for approximate computing. In ACM SIGPLAN Notices, Vol. 49. ACM, 95-104. Google ScholarDigital Library
- Adrian Sampson, Jacob Nelson, Karin Strauss, and Luis Ceze. 2014. Approximate storage in solid-state memories. ACM Transactions on Computer Systems (TOCS) 32, 3 (2014), 9. Google ScholarDigital Library
- Samsung. 2011. 16GB F-die NAND flash multi-level-cell (2bit/cell). (2011).Google Scholar
- Daniel Stodolsky, Garth Gibson, and Mark Holland. 1993. Parity logging overcoming the small write problem in redundant disk arrays. In ACM SIGARCH Computer Architecture News, Vol. 21. ACM, 64-75. Google ScholarDigital Library
- Hairong Sun, Pete Grayson, and Bob Wood. 2011. Quantifying reliability of solid-state storage from multiple aspects. Proceedings of the Storageconference. (2011).Google Scholar
- Hitachi Data Systems. 2018. Hitachi Virtual Storage Platform G Series. Technical Report. https://www.hitachivantara.com/en-us/products/storage/virtual-storage-platform-g-series.htmlGoogle Scholar
- Akshat Verma, Ricardo Koller, Luis Useche, and Raju Rangaswami. 2010. SRCMap: energy proportional storage using dynamic consolidation. In Proceedings of the 8th USENIX conference on File and Storage Technologies. USENIX Association. Google ScholarDigital Library
- Debao Wei, Libao Deng, Liyan Qiao, Peng Zhang, and Xiyuan Peng. 2016. PEVA: A page endurance variance aware strategy for the lifetime extension of NAND flash. IEEE Transactions on Very Large Scale Integration (VLSI) Systems 24, 5 (2016), 1749-1760. Google ScholarDigital Library
Index Terms
- Optimizing RAID/SSD controllers with lifetime extension for flash-based SSD array
Recommendations
Does RAID Improve Lifetime of SSD Arrays?
Parity protection at the system level is typically employed to compose reliable storage systems. However, careful consideration is required when SSD-based systems employ parity protection. First, additional writes are required for parity updates. Second,...
Optimizing RAID/SSD controllers with lifetime extension for flash-based SSD array
LCTES 2018: Proceedings of the 19th ACM SIGPLAN/SIGBED International Conference on Languages, Compilers, and Tools for Embedded SystemsFlash-based SSD RAID arrays are increasingly being deployed in data centers. Compared with HDD arrays, SSD arrays drastically enhance storage density and I/O performance, and reduce power and rack space. Nevertheless, SSDs suffer aging issues. Though ...
Flash-Aware RAID Techniques for Dependable and High-Performance Flash Memory SSD
Solid-state disks (SSDs), which are composed of multiple NAND flash chips, are replacing hard disk drives (HDDs) in the mass storage market. The performances of SSDs are increasing due to the exploitation of parallel I/O architectures. However, ...
Comments