EVENODD Code Implementation and Generalizations

Yihan Wang · 2022

With the explosive growth of data generation, the demand for storage capacity and scale of cloud storage systems increases, and at the same time data failure becomes more and more common, people also pay more attention to the effectiveness and reliability of data storage. Increasing data redundancy is an effective way to improve the capacity for data fault tolerance, the initially used replication redundancy strategy is simple and easy to implement, with low computational complexity, but has a large data overhead. While the Erasure Code is more cumbersome to encode, it can obtain higher reliability with less redundancy. Therefore, the redundancy strategy based on erasure codes is widely used, EVENODD code is one of the very popular application methods. In this paper, the principle of EVENODD code is introduced and an algorithm is designed to encode and decode the EVENODD code, besides, the algorithm's performance is analyzed, and the results show that the program running time is an incremental process when m increases. In addition, this article calculates how many XOR operations are required to encode and recover from single or double disk failures to analyze the time complexity, it is also found that the time complexity of the algorithm is O(n2) in all encoding and decoding scenarios. Finally, a method to reduce the read cost of single-disk failure recovery is discussed.

Read the paper · More papers on PaperTik