Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
research-article
Public Access

SWANS: An Interdisk Wear-Leveling Strategy for RAID-0 Structured SSD Arrays

Published: 29 April 2016 Publication History

Abstract

NAND flash memory–based solid state disks (SSDs) have been widely used in enterprise servers. However, flash memory has limited write endurance, as a block becomes unreliable after a finite number of program/erase cycles. Existing wear-leveling techniques are essentially intradisk data distribution schemes, as they can only even wear out across the flash medium within a single SSD. When multiple SSDs are organized in an array manner in server applications, an interdisk wear-leveling technique, which can ensure a uniform wear-out distribution across SSDs, is much needed. In this article, we propose a novel SSD-array level wear-leveling strategy called SWANS (<u>S</u>moothing <u>W</u>ear <u>A</u>cross <u>N</u> <u>S</u>SDs) for an SSD array structured in a RAID-0 format, which is frequently used in server applications. SWANS dynamically monitors and balances write distributions across SSDs in an intelligent way. Further, to evaluate its effectiveness, we build an SSD array simulator on top of a validated single SSD simulator. Next, SWANS is implemented in its array controller. Comprehensive experiments with real-world traces show that SWANS decreases the standard deviation of writes across SSDs on average by 16.7x. The gap in the total bytes written between the most written SSD and the least written SSD in an 8-SSD array shrinks at least 1.3x.

References

[1]
Nitin Agrawal, Vijayan Prabhakaran, Ted Wobber, John D. Davis, Mark Manasse, and Rina Panigrahy. 2008. Design tradeoffs for SSD performance. In USENIX Annual Technical Conference. 57--70.
[2]
Mahesh Balakrishnan, Asim Kadav, Vijayan Prabhakaran, and Dahlia Malkhi. 2010. Differential RAID: Rethinking RAID for SSD reliability. In Proceedings of the 5th European Conferencew on Computer Systems (EuroSys’10). 15--26.
[3]
Mahesh Balakrishnan, Dahlia Malkhi, Vijayan Prabhakaran, Ted Wobber, Michael Wei, and John D. Davis. 2012. CORFU: A shared log design for flash clusters. In NSDI. 1--14.
[4]
Roberto Bez, Emilio Camerlenghi, Alberto Modelli, and Angelo Visconti. 2003. Introduction to flash memory. Proceedings of the IEEE 91, 4, 489--502.
[5]
Andrew Birrell, Michael Isard, Chuck Thacker, and Ted Wobber. 2007. A design for high-performance flash disks. SIGOPS Operating Systems Review 41, 2, 88--93.
[6]
Simona Boboila and Peter Desnoyers. 2010. Write endurance in flash drives: Measurements and analysis. In USENIX FAST. 9--25.
[7]
Cactus Technologies. 2008. Wear Leveling Static vs Dynamic. Technical Report. Cactus Technologies, Hong Kong, P.R.China.
[8]
Li-Pin Chang and Chun-Da Du. 2009. Design and implementation of an efficient wear-leveling algorithm for solid-state-disk microcontrollers. ACM Transactions on Design Automation of Electronic Systems 15, 1, 6.
[9]
Feng Chen, David A. Koufaty, and Xiaodong Zhang. 2009. Understanding intrinsic characteristics and system implications of flash memory based solid state drives. In SIGMETRICS. 181--192.
[10]
Renhai Chen, Yi Wang, and Zili Shao. 2013. DHeating: Dispersed heating repair for self-healing NAND flash memory. In Proceedings of the 9th IEEE/ACM/IFIP International Conference on Hardware/Software Codesign and System Synthesis. IEEE Press, 7.
[11]
Ludmila Cherkasova and Minaxi Gupta. 2004. Analysis of enterprise media server workloads: Access patterns, locality, content evolution, and rates of change. IEEE/ACM Transactions on Networking 12, 5, 781--794.
[12]
Bruce Cullen. 2014. SSD Drive Failure: What Causes Solid State Drives to Stop Working and Fail? Retrieved April 1, 2016 from http://www.eprovided.com/data-recovery-blog/ssd-drive-failure-causes-solid-state-drive-stop-working-failures/.
[13]
Gregory R. Ganger, Bruce L. Worthington, and Yale N. Patt. 1999. The DiskSim Simulation Environment Version 3.0 Reference Manual. Technical Report. Carnegie Mellon University, Pittsburgh, PA 15213, USA.
[14]
Geoff Gasior. 2013. Introducing the SSD Endurance Experiment. Retrieved April 1, 2016 from http://techreport.com/review/24841/introducing-the-ssd-endurance-experiment.
[15]
M. Gómez and Vicente Santonja. 2002. Characterizing temporal locality in I/O workload. In Proceedings of the International Symposium on Performance Evaluation of Computer and Telecommunication Systems.
[16]
Jim Gray and Bob Fitzgerald. 2008. Flash disk opportunity for server applications. Queue 6, 4, 18--23.
[17]
Jim Gray, Bob Horst, and Mark Walker. 1990. Parity striping of disc arrays: Low-cost reliable storage with acceptable throughput. In Proceedings of the 16th VLDB Conference. 148--161.
[18]
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.
[19]
Jiahua He, Arun Jagatheesan, Sandeep Gupta, Jeffrey Bennett, and Allan Snavely. 2010. Dash: A recipe for a flash-based data intensive supercomputer. In SC. 1--11.
[20]
Yang Hu, Hong Jiang, Dan Feng, Lei Tian, Hao Luo, and Shuping Zhang. 2011. Performance impact and interplay of SSD parallelism through advanced commands, allocation strategy and data granularity. In Proceedings of the International Conference on Supercomputing. ACM, 96--107.
[21]
Yang Hu, Hong Jiang, Dan Feng, Lei Tian, Shuping Zhang, Jingning Liu, Wei Tong, Yi Qin, and Liuzheng Wang. 2010. Achieving page-mapping FTL performance at block-mapping FTL cost by hiding address translation. In 26th MSST. 1--12.
[22]
Intel. 2013. Intel Solid-State Drive Specification. Retrieved April 1, 2016 from http://www.intel.com/content/www/us/en/solid-state-drives/ssd-530-sata-sp ecification.html.
[23]
Intel. 2014. Intel SSD Product Comparison. Retrieved April 1, 2016 from http://www.intel.com/content/www/us/en/solid-state-drives/solid-state-drives-ssd.html. (2014).
[24]
Anxiao Jiang, Robert Mateescu, Eitan Yaakobi, Jehoshua Bruck, Paul H. Siegel, Alexander Vardy, and Jack K. Wolf. 2010. Storage coding for wear leveling in flash memories. IEEE Transactions on Information Theory 56, 10, 5290--5299.
[25]
Dawoon Jung, Yoon-Hee Chae, Heeseung Jo, Jin-Soo Kim, and Joonwon Lee. 2007. A group-based wear-leveling algorithm for large-capacity flash memory storage systems. In CASES. 160--164.
[26]
Youngjae Kim, Brendan Tauras, Aayush Gupta, and Bhuvan Urgaonkar. 2009. Flashsim: A simulator for NAND flash-based solid-state drives. In International Conference on Advances in System Simulation. 125--131.
[27]
Andrew Ku. 2011. Investigation: Is Your SSD More Reliable Than A Hard Drive? Retrieved April 1, 2016 from http://www.tomshardware.com/reviews/ssd-reliability-failure-rate,2923.html. (2011).
[28]
Sang-Won Lee, Bongki Moon, and Chanik Park. 2009. Advances in flash memory SSD technology for enterprise database applications. In Proceedings of the 35th SIGMOD International Conference on Management of Data. 863--870.
[29]
Sang-Won Lee, Dong-Joo Park, Tae-Sun Chung, Dong-Ho Lee, Sangwon Park, and Ha-Joo Song. 2007. A log buffer-based flash translation layer using fully-associative sector translation. ACM Transactions on Embedded Computer Systems 6, 3, 18.
[30]
Scott T. Leutenegger and Daniel Dias. 1993. A modeling study of the TPC-C benchmark. Proceedings of the 1993 SIGMOD International Conference on Management of Data. 22--31.
[31]
Bo Mao, Hong Jiang, Suzhen Wu, Lei Tian, Dan Feng, Jianxi Chen, and Lingfang Zeng. 2012. HPDA: A hybrid parity-based disk array for enhanced performance and reliability. ACM Transactions on Storage 8, 1.
[32]
M. Mesnier. 2001. Intel open storage toolkit. Retrieved April 1, 2016 from http://www.sourceforge.org/ projects/intel-iscsi.
[33]
Muthukumar Murugan and David H. C. Du. 2011. Rejuvenator: A static wear leveling algorithm for NAND flash memory with minimized overhead. In 27th MSST. 1--12.
[34]
Dushyanth Narayanan, Eno Thereska, Austin Donnelly, Sameh Elnikety, and Antony Rowstron. 2009. Migrating server storage to SSDs: Analysis of tradeoffs. In Proceedings of the 4th ACM European Conference on Computer Systems. 145--158.
[35]
NetApp. 2014. NetApp EF540 Technical Specifications. Retrieved April 1, 2016 from http://www.netapp.com/us/products/storage-systems/flash-ef540/ef540-tech-spe cs.aspx. (2014).
[36]
Eduardo Pinheiro, Wolf-Dietrich Weber, and Luiz André Barroso. 2007. Failure trends in a large disk drive population. In FAST, Vol. 7. 17--23.
[37]
SNIA IOTTA Repository. 2011. Build and Ecahange server traces. (2011). http://iotta.snia.org/traces/list/BlockIO.
[38]
Bianca Schroeder and Garth A. Gibson. 2007. Disk failures in the real world: What does an MTTF of 1, 000, 000 hours mean to you? In FAST, Vol. 7. 1--16.
[39]
Qi Wu, Guiqiang Dong, and Tong Zhang. 2011. Exploiting heat-accelerated flash memory wear-out recovery to enable self-healing SSDs. In Proceedings of the Workshop on Hot Topics in Storage and File Systems.
[40]
Soraya Zertal and Peter G. Harrison. 2011. Investigating flash memory wear levelling and execution modes. Simulation 87, 12.

Cited By

View all
  • (2024)Explorations and Exploitation for Parity-based RAIDs with Ultra-fast SSDsACM Transactions on Storage10.1145/362799220:1(1-32)Online publication date: 30-Jan-2024
  • (2024)SSRAID: A Stripe-Queued and Stripe-Threaded Merging I/O Strategy to Improve Write Performance of Serial Interface SSD RAIDIEEE Transactions on Parallel and Distributed Systems10.1109/TPDS.2024.344308335:10(1841-1853)Online publication date: Oct-2024
  • (2024)Ada-WL: An Adaptive Wear-Leveling Aware Data Migration Approach for Flexible SSD Array Scaling in ClustersIEEE Transactions on Computers10.1109/TC.2024.339849373:8(1967-1982)Online publication date: 1-Aug-2024
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Transactions on Storage
ACM Transactions on Storage  Volume 12, Issue 3
June 2016
237 pages
ISSN:1553-3077
EISSN:1553-3093
DOI:10.1145/2932205
Issue’s Table of Contents
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 ACM 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: 29 April 2016
Accepted: 01 April 2015
Revised: 01 November 2014
Received: 01 April 2014
Published in TOS Volume 12, Issue 3

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. NAND flash memory
  2. SSD array
  3. solid state disk
  4. wear-leveling

Qualifiers

  • Research-article
  • Research
  • Refereed

Funding Sources

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)98
  • Downloads (Last 6 weeks)16
Reflects downloads up to 16 Oct 2024

Other Metrics

Citations

Cited By

View all
  • (2024)Explorations and Exploitation for Parity-based RAIDs with Ultra-fast SSDsACM Transactions on Storage10.1145/362799220:1(1-32)Online publication date: 30-Jan-2024
  • (2024)SSRAID: A Stripe-Queued and Stripe-Threaded Merging I/O Strategy to Improve Write Performance of Serial Interface SSD RAIDIEEE Transactions on Parallel and Distributed Systems10.1109/TPDS.2024.344308335:10(1841-1853)Online publication date: Oct-2024
  • (2024)Ada-WL: An Adaptive Wear-Leveling Aware Data Migration Approach for Flexible SSD Array Scaling in ClustersIEEE Transactions on Computers10.1109/TC.2024.339849373:8(1967-1982)Online publication date: 1-Aug-2024
  • (2023)Video File Allocation for Wear-Leveling in Distributed Storage Systems With Heterogeneous Solid-State-Disks (SSDs)IEEE Transactions on Circuits and Systems for Video Technology10.1109/TCSVT.2022.322247333:5(2477-2490)Online publication date: May-2023
  • (2023)Angle Based Critical Nodes Detection (ABCND) for Reliable Industrial Wireless Sensor NetworksWireless Personal Communications: An International Journal10.1007/s11277-023-10308-4130:2(757-775)Online publication date: 1-May-2023
  • (2022)Mlog: Multi-log Write Buffer upon Ultra-fast SSD RAIDProceedings of the 51st International Conference on Parallel Processing10.1145/3545008.3545034(1-11)Online publication date: 29-Aug-2022
  • (2022)Improving Fairness for SSD Devices through DRAM Over-Provisioning Cache ManagementIEEE Transactions on Parallel and Distributed Systems10.1109/TPDS.2022.314329533:10(2444-2454)Online publication date: 1-Oct-2022
  • (2022)Self-Adapting Channel Allocation for Multiple Tenants Sharing SSD DevicesIEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems10.1109/TCAD.2021.305637441:2(294-305)Online publication date: Feb-2022
  • (2021)Lazy-WL: A Wear-aware Load Balanced Data Redistribution Method for Efficient SSD Array Scaling2021 IEEE International Conference on Cluster Computing (CLUSTER)10.1109/Cluster48925.2021.00030(157-168)Online publication date: Sep-2021
  • (2020)NVMCache: Wear-Aware Load Balancing NVM-based Caching for Large-Scale Storage Systems2020 IEEE Intl Conf on Parallel & Distributed Processing with Applications, Big Data & Cloud Computing, Sustainable Computing & Communications, Social Computing & Networking (ISPA/BDCloud/SocialCom/SustainCom)10.1109/ISPA-BDCloud-SocialCom-SustainCom51426.2020.00108(657-665)Online publication date: Dec-2020
  • Show More Cited By

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Get Access

Login options

Full Access

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media