随着海量存储系统的发展和在复杂环境中的应用,存储系统的可靠性受到了严重的挑战.纠删码作为存储系统容错的主要方法越来越受到重视.首先介绍了当前典型和常见的纠删码技术的发展现状,从评价纠删码性能的各项重要指标的角度详细地对比和分析了现有的纠删码技术,给出了不同纠删码在容错能力与磁盘要求、空间利用率、编码效率、更新效率、重构效率等方面的不足和可能的改进见解,并讨论了磁盘阵列系统、P2P存储系统、分布式存储系统、归档存储系统等不同存储系统对于纠删码各类性能的差别要求,并进一步指明了当前存储系统纠删码研究中尚未解决的一些难题和未来纠删码可能的发展方向.通过分析得出,目前不同纠删码在容错能力、计算效率、存储利用率等方面都存在不同程度的缺陷,如何平衡这些影响纠删码性能的因素,设计出更高容错能力、更高计算效率及更高存储利用率的纠删码,仍是未来很长一段时间内值得不断深入研究的问题.
With the development of massive storage system and its application in complex environments,there is a big challenge in the reliability of storage system.Erasure code is drawing more and more attention since it is the main technology for fault tolerance in storage systems.In this paper,we firstly introduce the current-status of some typical and popular erasure codes,then make careful comparison and analysis on current erasure codes with the important metrics that are used to evaluate them.Afterwards,we point out some shortages and improvement suggestions on fault tolerance,requirements for the number of disks,storage efficiency,encoding efficiency,updating efficiency and decoding efficiency for different erasure codes.What' more,we discuss the different requirements on erasure code in disk array systems,P2P systems,distributed storage systems and archival storage systems.Finally,we indicate the unresolved problems in erasure code and their future trends.From the analysis,we found a lot of drawbacks on fault tolerance,storage efficiency and computation efficiency(including encoding efficiency,updating efficiency and decoding efficiency) for different erasure codes.It is an issue worthy of further study in a long period to make a balance on these factors and create new erasure code with higher fault tolerance,greater storage efficiency,and faster computation efficiency.