I/O-Efficient Scaling Schemes for Distributed Storage Systems with CRS Codes

System scaling becomes essential and indispensable for distributed storage systems due to the explosive growth of data volume. Considering that fault-protection is a necessity in large-scale distributed storage systems, and Cauchy Reed-Solomon (CRS) codes are widely deployed to tolerate multiple simultaneous node failures, this paper studies the scaling problem of distributed storage systems with CRS codes. In particular, we formulate the scaling problem with an optimization model in which both the post-scaling encoding matrix and the data migration policy are assumed to be unknown in advance. To minimize the I/O overhead, we propose a three-phase optimization scaling scheme for CRS codes. Specifically, we first derive the optimal post-scaling encoding matrix under a given data migration policy, then optimize the data migration process using the selected post-scaling encoding matrix, and finally exploit the Maximum Distance Separable (MDS) property to further optimize the designed data migration process. Our scaling scheme requires minimal data movement while achieving uniform data distribution. Moreover, it requires to read fewer data blocks than conventional minimum data migration schemes, but still guarantees the minimum amount of migrated data. To validate the efficiency of our scheme, we implement it atop a networked file system. Extensive experiments show that our scaling scheme uses less scaling time than the basic scheme.

[1]  Weimin Zheng,et al.  FastScale: Accelerate RAID Scaling by Minimizing Data Migration , 2011, FAST.

[2]  Peter F. Corbett,et al.  Row-Diagonal Parity for Double Disk Failure Correction (Awarded Best Paper!) , 2004, USENIX Conference on File and Storage Technologies.

[3]  James S. Plank,et al.  AONT-RS: Blending Security and Performance in Dispersed Storage Systems , 2011, FAST.

[4]  Ben Y. Zhao,et al.  Maintenance-Free Global Data Storage , 2001, IEEE Internet Comput..

[5]  Chentao Wu,et al.  GSR: A Global Stripe-Based Redistribution Approach to Accelerate RAID-5 Scaling , 2012, 2012 41st International Conference on Parallel Processing.

[6]  Catherine D. Schuman,et al.  A Performance Evaluation and Examination of Open-Source Erasure Coding Libraries for Storage , 2009, FAST.

[7]  Cheng Huang,et al.  Erasure Coding in Windows Azure Storage , 2012, USENIX Annual Technical Conference.

[8]  Patrick P. C. Lee,et al.  NCFS: On the Practicality and Extensibility of a Network-Coding-Based Distributed File System , 2011, 2011 International Symposium on Networking Coding.

[9]  Daniel P. Siewiorek,et al.  Architectures and algorithms for on-line failure recovery in redundant disk arrays , 1994, Distributed and Parallel Databases.

[10]  Chentao Wu,et al.  SDM: A Stripe-Based Data Migration Scheme to Improve the Scalability of RAID-6 , 2012, 2012 IEEE International Conference on Cluster Computing.

[11]  Marek Karpinski,et al.  An XOR-based erasure-resilient coding scheme , 1995 .

[12]  Si Wu,et al.  Enhancing scalability in distributed storage systems with Cauchy Reed-Solomon codes , 2014, 2014 20th IEEE International Conference on Parallel and Distributed Systems (ICPADS).

[13]  Keqin Li,et al.  Rethinking RAID-5 Data Layout for Better Scalability , 2014, IEEE Transactions on Computers.