Storage-Optimized Data-Atomic Algorithms for Handling Erasures and Errors in Distributed Storage Systems
Name
Lynch_Storage-optimized.pdf
Size
371.23 KB
Format
Adobe PDF
Checksum (MD5)
6e80a500bd5f1f9987e1d1f9c8f18a41
Author(s) • • • • •
Kantor, Erez
Schwarzmann, Alexander A.
Konwar, Kishori Mohan
Prakash, N.
Lynch, Nancy Ann
Medard, Muriel
Date Issued
May 2016
Journal
2016 IEEE International Parallel and Distributed Processing Symposium (IPDPS)
Publisher
Institute of Electrical and Electronics Engineers (IEEE)
Citation
Konwar, Kishori M., N. Prakash, Erez Kantor, Nancy Lynch, Muriel Medard, and Alexander A. Schwarzmann. “Storage-Optimized Data-Atomic Algorithms for Handling Erasures and Errors in Distributed Storage Systems.” 2016 IEEE International Parallel and Distributed Processing Symposium (IPDPS) (May 2016).
Version
Author's final manuscript
Abstract
Erasure codes are increasingly being studied in the context of implementing atomic memory objects in large scale asynchronous distributed storage systems. When compared with the traditional replication based schemes, erasure codes have the potential of significantly lowering storage and communication costs while simultaneously guaranteeing the desired resiliency levels. In this work, we propose the Storage-Optimized Data-Atomic (SODA) algorithm for implementing atomic memory objects in the multi-writer multi-reader setting. SODA uses Maximum Distance Separable (MDS) codes, and is specifically designed to optimize the total storage cost for a given fault-tolerance requirement. For tolerating f server crashes in an n-server system, SODA uses an [n, k] MDS code with k = n - f, and incurs a total storage cost of n/n-f. SODA is designed under the assumption of reliable point-to-point communication channels. The communication cost of a write and a read operation are respectively given by O(f[superscript 2]) and n/n-f(δ[subscript w]+1), where δ[subscript w] denotes the number of writes that are concurrent with the particular read. In comparison with the recent CASGC algorithm [1], which also uses MDS codes, SODA offers lower storage cost while pays more on the communication cost. We also present a modification of SODA, called SODA[subscript err], to handle the case where some of the servers can return erroneous coded elements during a read operation. Specifically, in order to tolerate f server failures and e error-prone coded elements, the SODAerr algorithm uses an [n, k] MDS code such that k = n - 2e - f. SODAerr also guarantees liveness and atomicity, while maintaining an optimized total storage cost of n/n-f-2e.
MIT Department
Massachusetts Institute of Technology. Computer Science and Artificial Intelligence Laboratory
Massachusetts Institute of Technology. Department of Electrical Engineering and Computer Science
Terms of Use
Creative Commons Attribution-Noncommercial-Share Alike
Persistent DSpace Link
DOI of Published Version
http://dx.doi.org/10.1109/IPDPS.2016.55