Configurable reliability framework for SSD-RAID

Since multi-level-cell flash memory (MLC) is superior to single-level-cell flash memory (SLC) in terms of cost and density, most solid-state drives (SSD's) adopt MLC as major storage medium. Unfortunately, compared with SLC, MLC has relatively poor reliability and slow access speed. One feasible solution is to adopt the notion of redundant array of inexpensive disks (RAID) to construct a large-scale flash memory storage system that can support high reliability and high performance. However, parity data introduced by RAID structure would incur extra writes and updates that further deteriorate performance and space utilization. To reduce repeated updates of parity data incurred by data updates as well as to make data recovery scheme flexible and space efficient, we propose a configurable reliability framework (CRF) for SSD-RAID. Under our framework, users can configure different reliability level for their data based on the criticality of the data. With different reliability levels, capability of recovery would differ accordingly. Users could also dynamically change the reliability level of their data whenever needed. Different from prior researches, our framework could not only greatly reduce the overhead incurred by parity data but also guarantee the data reliability. Thus, the proposed framework could be applied in flash memory based storage systems.