Presentation is loading. Please wait.

Presentation is loading. Please wait.

BASIC Regenerating Codes for Distributed Storage Systems Kenneth Shum (Joint work with Minghua Chen, Hanxu Hou and Hui Li)

Similar presentations


Presentation on theme: "BASIC Regenerating Codes for Distributed Storage Systems Kenneth Shum (Joint work with Minghua Chen, Hanxu Hou and Hui Li)"— Presentation transcript:

1 BASIC Regenerating Codes for Distributed Storage Systems Kenneth Shum (Joint work with Minghua Chen, Hanxu Hou and Hui Li)

2 Window Azure data centers Aug 2013 kshum 2

3 Inside a data center Aug 20133 kshum http://technoblimp.com

4 Data distribution Encode and distribute a data file to n storage nodes. Data File: “INC” Aug 20134 kshum

5 Data collector Data collector can retrieve the whole file by downloading from any k storage nodes. “INC”  Aug 20135 kshum

6 Three kinds of disk failures Transient error due to noise corruption – repeat the disk access request Disk sector error – partial failure – detected and masked by the operating system Catastrophic error – total failure due to disk controller for instance – the whole disk is regarded as erased Aug 20136kshum

7 Frequency of node failures Figure from “XORing elephants: novel erasure codes for Big Data” by Sathiamoorthy et al. Number of failed nodes over a single month in a 3000 node production cluster of Facebook. Aug 20137

8 Outline of this talk Repetition scheme Traditional erasure-correcting codes – Reed-Solomon codes Network-coding-based scheme – BASIC regenerating codes Aug 20138kshum

9 Distributed storage system Encode a data file and distribute it to n disks (n,k) recovery property – The data file can be rebuilt from any k disks. Repair – If a node fails, we regenerate a new node by connecting and downloading data from any d surviving disks. – Aim at minimizing the repair bandwidth (Dimakis et al 2007). A coding scheme with the above properties is called a regenerating code. Aug 2013 kshum 9

10 Repetition scheme GFS: Replicate data 3 times Gmail: Replicate data 21 times Aug 2013 kshum 10

11 2x Repetition scheme Aug 201311 A B A A, B B Data Collector Cannot tolerate double disk failures 1G Divide the data file into 2 parts

12 Repair is easy for repetition-based system Aug 201312 A B A B New node A 1G Repair bandwidth =1G

13 Reed-Solomon Code Aug 201313 A B A+BA+B A, B A+2B Data Collector Divide the file into 2 parts It can tolerate double disk failures

14 Repair requires essentially decoding the whole file Aug 201314 A B A+BA+B A+2B kshum New node A 1G Repair bandwidth = 2G

15 BASIC regeneration code Aug 201315 Divide the data file into 4 parts     Binary Addition Shift Implementable Convolutional 0.5G Utilization of bit-wise shift in storage was proposed by Piret and Krol (1983), and Qureshi, Foh and Cai (2012).

16 Download from nodes 1 and 2 Aug 201316     Data Collector 1G 0.5G

17 Download from nodes 1 and 3 Aug 201317     Data Collector 1G 0.5G

18 Download from nodes 1 and 4 Aug 201318     Data Collector 1G 0.5G

19 Download from nodes 2 and 3 Aug 201319     Data Collector 1G 0.5G

20 Download from nodes 2 and 4 Aug 201320     Data Collector 1G 0.5G

21 Download from nodes 3 and 4 Aug 201321     Data Collector 1G 0.5G

22 Zigzag decoding P1  P2’P1  P2’   P1  P2P1  P2 P1P1 P2P2 P1P1 P2’P2’ Aug 201322kshum à la Gollakata and Katabi (2008) What to solve for P 1 and P 2.

23 Repair of BASIC regenerating code     New node XOR Bitwise shift and XOR Repair bandwidth=1.5 G

24 Repair of BASIC regenerating code     Decode the blue and red packets by zigzag decoding Interference alignment

25 Comparison of the three examples Repetition scheme Reed-Solomon CodesBASIC regenerating codes Storage efficiency 1/2 ReliabilityTolerate one disk failure Tolerate two disk failures Repair bandwidth 1G2G1.5 G Computational complexity Very smallFinite field arithmeticBinary addition and bit-wise shift Aug 2013kshum25

26 Summary We can reduce repair bandwidth by network coding. BASIC regenerating codes – A failed storage node can be repaired by simple bit-wise shift and XOR operations. – Small storage overhead due to shifting. Aug 2013kshum26

27 References Piret and Krol, MDS convolution codes, IEEE Trans. of Information Theory, 1983. Dimakis, Brighten, Wainwright and Ramchandran, Network coding for distributed storage systems, INFOCOM, 2007. Gollakata and Katabi, Zigzag decoding: combating hidden terminals in wireless networks, Proc. in the ACM Sigcomm, 2008. Qureshi, Foh, and Cai, Optimal solution for the index coding problem using network coding over GF(2), Proc. IEEE Conf. on Sensor Mesh and Ad Hoc Comm. and Network, 2012. Sung and Gong, A zigzag decodable code with MDS property for distributed storage systems, Proc. IEEE Symp. on Information Theory, 2013. Hou, Shum, Chen and Li, BASIC regenerating code: binary addition and shift for exact repair, Proc. IEEE Symp. on Information Theory, 2013. Aug 2013 kshum 27

28 Two modes of repair Exact repair – The content of the new node is exactly the same as the content of the failed node Functional repair – only requires that the (n,k) recovery property is preserved. Aug 2013 kshum 28


Download ppt "BASIC Regenerating Codes for Distributed Storage Systems Kenneth Shum (Joint work with Minghua Chen, Hanxu Hou and Hui Li)"

Similar presentations


Ads by Google