Abstract
Solid-state drives (SSDs) have been widely deployed in many platforms including consumer electronics, desktops and enterprise data centers due to their high performance and low power consumption. However, SSDs suffer from bit errors, and the bit error rate is time dependent since it increases as an SSD wears down. Traditional storage systems mainly use parity-based RAID to provide reliability guarantees by striping redundancy across multiple devices, but the effectiveness of traditional RAID schemes in SSDs remains debatable. Existing solutions are based on the block device SSDs, which used as faster HDD. But the characteristics of NAND flash memory and HDD are very different, Non-write-in place and background Garbage-collection have a negative impact on the real-time performance and reliability of the system. And almost all of the existing solutions are built on Black-Box SSD, which we cannot know the internal detail and data layout. As a result, they cannot take full advantage of flash memory features, reduce the parity updates costs and improve the system reliability. In this work, we proposed a new RAID system built on White-Box SSD, we call it WB-RAIS. For White-Box SSD, the FTL implement on the host side and it could be co-designed with the RAID controller. We exploit the characteristics of flash memory and build the strip mapping based on the physical block address. We also proposed a partial strip mechanism and smooth equipment replacement method. Experimental results show that WB-RAIS improves the write performance by an average of 20% and reduces the flash erase count 17–52% compared to Black-Box SSD RAID, and enhances the system reliability significantly.
Similar content being viewed by others
References
Grupp, L. M., Davis, J. D., & Swanson, S. (2012). The bleak future of nand flash memory. In Proceedings of the 10th USENIX conference on file and storage technologies, USENIX Association, p. 2.
Mielke, N., Marquart, T., Wu, N., Kessenich, J., Belgal, H., Schares, E., Trivedi, F., Goodness, E., & Nevill, L. R. (2008). Bit error rate in nand flash memories. In IRPS 2008 IEEE international reliability physics symposium, 2008, IEEE, pp. 9–19.
Chen, P. M., Lee, E. K., Gibson, G. A., Katz, R. H., & Patterson, D. A. (1994). Raid: High-performance, reliable secondary storage. ACM Computing Surveys (CSUR), 26(2), 145–185.
Balakrishnan, M., Kadav, A., Prabhakaran, V., & Malkhi, D. (2010). Differential raid: Rethinking raid for SSD reliability. ACM Transactions on Storage (TOS), 6(2), 4.
Pan, Y., Li, Y., Xu, Y., & Li, Z. (2015). Grouping-based elastic striping with hotness awareness for improving SSD raid performance. In 2015 45th annual IEEE/IFIP international conference on dependable systems and networks (DSN), IEEE, pp. 160–171.
Going beyond ssd: The fusionio software defined flash memory approach. www.fusionio.com/white-papers/beyondssd/.
Hardock, S., Petrov, I., Gottstein, R., & Buchmann, A. (2013). Noftl: Database systems on ftl-less flash storage. Proceedings of the VLDB Endowment, 6(12), 1278–1281.
Ouyang, J., Lin, S., Jiang, S., Hou, Z., Wang, Y., & Wang, Y. (2014). Sdf: Software-defined flash for web-scale internet storage systems. ACM SIGPLAN Notices, 49(4), 471–484.
Zhang, J., Feng, D., Gao, J., Tong, W., Liu, J., Hua, Y., Gao, Y., Fang, C., Xia, W., & Fu, F. et al. (2016). Application-aware and software defined ssd scheme for tencent large-scale storage system. In 2016 IEEE 22nd international conference on parallel and distributed systems (ICPADS), IEEE, pp. 482–490.
Im, S., & Shin, D. (2011). Flash-aware raid techniques for dependable and high-performance flash memory ssd. IEEE Transactions on Computers, 60(1), 80–92.
Mir, I. F., & McEwan, A. A. (2011). A reliability enhancement mechanism for high-assurance mlc flash-based storage systems. In 2011 IEEE 17th international conference on embedded and real-time computing systems and applications (RTCSA), Vol. 1, IEEE, pp. 190–194.
Moon, S., & Reddy, A. (2016). Does raid improve lifetime of ssd arrays? ACM Transactions on Storage (TOS), 12(3), 11.
Hsieh, J.-W., & Liu, M.-X. (2014). Configurable reliability framework for ssd-raid. In 2014 IEEE non-volatile memory systems and applications symposium (NVMSA), IEEE, pp. 1–6.
Hu, Y., Jiang, H., Feng, D., Tian, L., Luo, H., & Zhang, S. (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, pp. 96–107.
Acknowledgements
This work was partly supported by the National Key Research and Development Program of China under Grant 2016YFB1000202; State Key Laboratory of Computer Architecture, No. CARCH201505; NSFC Nos. 61502190 and 61502191; Fundamental Research Funds for the Central Universities, HUST, under Grant No. 2015MS07; Hubei Provincial Natural Science Foundation of China under Grant No. 2016CFB226. This work was also supported by Engineering Research Center of Data Storage Systems and Technology, Ministry of Education, China.
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Zhang, J., Feng, D., Liu, J. et al. WB-RAIS: White-Box Redundant Array of Independent SSDs. Wireless Pers Commun 102, 2807–2821 (2018). https://doi.org/10.1007/s11277-018-5308-2
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11277-018-5308-2