Codes with local decoding procedures Sergey Yekhanin Microsoft Research.

Slides:



Advertisements
Similar presentations
Optimal Lower Bounds for 2-Query Locally Decodable Linear Codes Kenji Obata.
Advertisements

PROOFS OF RETRIEVABILITY VIA HARDNESS AMPLIFICATION Yevgeniy Dodis, Salil Vadhan and Daniel Wichs.
Analysis and Construction of Functional Regenerating Codes with Uncoded Repair for Distributed Storage Systems Yuchong Hu, Patrick P. C. Lee, Kenneth.
current hadoop architecture
Alex Dimakis based on collaborations with Dimitris Papailiopoulos Arash Saber Tehrani USC Network Coding for Distributed Storage.
Henry C. H. Chen and Patrick P. C. Lee
An Ω(n 1/3 ) Lower Bound for Bilinear Group Based Private Information Retrieval Alexander Razborov Sergey Yekhanin.
Locally Decodable Codes from Nice Subsets of Finite Fields and Prime Factors of Mersenne Numbers Kiran Kedlaya Sergey Yekhanin MIT Microsoft Research.
HAIL (High-Availability and Integrity Layer) for Cloud Storage
Probabilistic verification Mario Szegedy, Rutgers www/cs.rutgers.edu/~szegedy/07540 Lecture 4.
Coding for Modern Distributed Storage Systems: Part 1. Locally Repairable Codes Parikshit Gopalan Windows Azure Storage, Microsoft.
D.J.C MacKay IEE Proceedings Communications, Vol. 152, No. 6, December 2005.
Locally Decodable Codes
Ragib Hasan University of Alabama at Birmingham CS 491/691/791 Fall 2011 Lecture 10 09/15/2011 Security and Privacy in Cloud Computing.
Coding for Atomic Shared Memory Emulation Viveck R. Cadambe (MIT) Joint with Prof. Nancy Lynch (MIT), Prof. Muriel Médard (MIT) and Dr. Peter Musial (EMC)
Parikshit Gopalan Windows Azure Storage, Microsoft.
DIGITAL COMMUNICATION Coding
Private Information Retrieval. What is Private Information retrieval (PIR) ? Reduction from Private Information Retrieval (PIR) to Smooth Codes Constructions.
Private Information Retrieval Amos Beimel – Ben-Gurion University Tel-Hai, June 4, 2003 This talk is based on talks by:
Public Key Encryption that Allows PIR Queries Dan Boneh 、 Eyal Kushilevitz 、 Rafail Ostrovsky and William E. Skeith Crypto 2007.
Of 30 Locality in Coding Theory Madhu Sudan MSR June 16, 2015ISIT: Locality in Coding Theory1.
Hamming Code Rachel Ah Chuen. Basic concepts Networks must be able to transfer data from one device to another with complete accuracy. Data can be corrupted.
©2001 Pål HalvorsenINFOCOM 2001, Anchorage, April 2001 Integrated Error Management in MoD Services Pål Halvorsen, Thomas Plagemann, and Vera Goebel University.
New Protocols for Remote File Synchronization Based on Erasure Codes Utku Irmak Svilen Mihaylov Torsten Suel Polytechnic University.
Repairable Fountain Codes Megasthenis Asteris, Alexandros G. Dimakis IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATIONS, VOL. 32, NO. 5, MAY /5/221.
1 Failure Correction Techniques for Large Disk Array Garth A. Gibson, Lisa Hellerstein et al. University of California at Berkeley.
Of 29 August 4, 2015SIAM AAG: Algebraic Codes and Invariance1 Algebraic Codes and Invariance Madhu Sudan Microsoft Research.
Channel Coding Part 1: Block Coding
CS 5204 (FALL 2005)1 Leases: An Efficient Fault Tolerant Mechanism for Distributed File Cache Consistency Gray and Cheriton By Farid Merchant Date: 9/21/05.
COEN 180 Erasure Correcting, Error Detecting, and Error Correcting Codes.
Distributed computing using Projective Geometry: Decoding of Error correcting codes Nachiket Gajare, Hrishikesh Sharma and Prof. Sachin Patkar IIT Bombay.
Reed Solomon Code Doug Young Suh Last updated : Aug 1, 2009.
CS717 Algorithm-Based Fault Tolerance Matrix Multiplication Greg Bronevetsky.
Coding Theory. 2 Communication System Channel encoder Source encoder Modulator Demodulator Channel Voice Image Data CRC encoder Interleaver Deinterleaver.
§6 Linear Codes § 6.1 Classification of error control system § 6.2 Channel coding conception § 6.3 The generator and parity-check matrices § 6.5 Hamming.
Ahmed Osama Research Assistant. Presentation Outline Winc- Nile University- Privacy Preserving Over Network Coding 2  Introduction  Network coding 
DIGITAL COMMUNICATIONS Linear Block Codes
ADVANTAGE of GENERATOR MATRIX:
Coding and Algorithms for Memories Lecture 14 1.
Information Theory Linear Block Codes Jalal Al Roumy.
Authentication protocol providing user anonymity and untraceability in wireless mobile communication systems Computer Networks Volume: 44, Issue: 2, February.
Computer Science Division
On Coding for Real-Time Streaming under Packet Erasures Derek Leong *#, Asma Qureshi *, and Tracey Ho * * California Institute of Technology, Pasadena,
On Locally Decodable Codes Self Correctable Codes t-private PIR and Omer Barkol, Yuval Ishai and Enav Weinreb Technion, Israel.
FEC Linear Block Coding
Cryptography and Coding Theory
Coding and Algorithms for Memories Lecture 13 1.
Private Information Retrieval Based on the talk by Yuval Ishai, Eyal Kushilevitz, Tal Malkin.
MEGGIT DECODER. PROBLEM STATEMENT To correct all single errors in n-bit codeword, n error patterns of single errors and their corresponding syndromes.
1-D Interleaved Parity FEC draft-begen-fecframe-interleaved-fec-scheme-00 IETF 72 – July 2008 Ali C. Begen
II. Linear Block Codes. © Tallal Elshabrawy 2 Digital Communication Systems Source of Information User of Information Source Encoder Channel Encoder Modulator.
Channel Coding: Part I Presentation II Irvanda Kurniadi V. ( ) Digital Communication 1.
Class Report 林格名 : Reed Solomon Encoder. Reed-Solomom Error Correction When a codeword is decoded, there are three possible outcomes –If 2s + r < 2t (s.
RS – Reed Solomon Error correcting code. Error-correcting codes are clever ways of representing data so that one can recover the original information.
1 Wireless Networks Lecture 5 Error Detecting and Correcting Techniques (Part II) Dr. Ghalib A. Shah.
A Tale of Two Erasure Codes in HDFS
New Locally Decodable Codes and Private Information Retrieval Schemes
IERG6120 Lecture 22 Kenneth Shum Dec 2016.
Section 7 Erasure Coding Overview
Sublinear-Time Error-Correction and Error-Detection
Locality in Coding Theory
Error-Correcting Codes:
Algebraic Codes and Invariance
COT 5611 Operating Systems Design Principles Spring 2012
II. Linear Block Codes.
Maximally Recoverable Local Reconstruction Codes
Local Error-Detection and Error-correction
COT 5611 Operating Systems Design Principles Spring 2014
Information Redundancy Fault Tolerant Computing
Theory of Information Lecture 13
Presentation transcript:

Codes with local decoding procedures Sergey Yekhanin Microsoft Research

Error-correcting codes: paradigm *00*10010* Encoder Decoder Channel The paradigm dates back to 1940s (Shannon / Hamming) One limitation: recovering a single message coordinate requires processing all corrupted codeword Sender Receiver

Local decoding: paradigm *00*10010* Encoder Local Decoder Channel First account: Reed’s decoder for Muller’s codes (1954) Implicit use: (1950s-1990s) Formal definition and systematic study (late 1990s) [Levin’95, STV’98, KT’00]  Original applications in computational complexity theory  Cryptography  Most recently used in practice to provide reliability in distributed storage (Microsoft Azure, Windows Server, Windows, Hadoop, etc.) Local decoder runs in time much smaller than the message length!

Local decoding: example X1X1 X1X1 X E(X) X2X2 X2X2 X3X3 X3X3 X1X1 X1X1 X1X2X1X2 X1X2X1X2 X2X2 X2X2 X3X3 X3X3 X1X3X1X3 X1X3X1X3 X2X3X2X3 X2X3X2X3 X1X2X3X1X2X3 X1X2X3X1X2X3

Local decoding: example X1X1 X1X1 X E(X) X2X2 X2X2 X3X3 X3X3 X1X1 X1X1 X1X2X1X2 X1X2X1X2 X2X2 X2X2 X3X3 X3X3 X1X3X1X3 X1X3X1X3 X2X3X2X3 X2X3X2X3 X1X2X3X1X2X3 X1X2X3X1X2X3

Local decoding: Decoding tuples for X 1 X1X1 X1X1 X E(X) X2X2 X2X2 X3X3 X3X3 X1X1 X1X1 X1X2X1X2 X1X2X1X2 X2X2 X2X2 X3X3 X3X3 X1X3X1X3 X1X3X1X3 X2X3X2X3 X2X3X2X3 X1X2X3X1X2X3 X1X2X3X1X2X3

Local decoding: Decoding tuples for X 2 X1X1 X1X1 X E(X) X2X2 X2X2 X3X3 X3X3 X1X1 X1X1 X1X2X1X2 X1X2X1X2 X2X2 X2X2 X3X3 X3X3 X1X3X1X3 X1X3X1X3 X2X3X2X3 X2X3X2X3 X1X2X3X1X2X3 X1X2X3X1X2X3

Codes with local decoding Taxonomy of known families of codes Multiplicity codes Matching vector codes Reed Muller codes Local reconst- ruction codes Projective geometry codes Applications to data storage Applications in crypto / complexity Locally decodable codes

Plan Part I: (Locally decodable codes) Private Information Retrieval (PIR) schemes PIR schemes from smooth codes Reed Muller codes Part II: (Codes with locality for distributed data storage) Erasure coding for data storage Local reconstruction codes for data storage Constructions and limitations

Part I: Locally decodable codes

Smooth codes X1X1 X1X1 cjcj cjcj X2X2 X2X2 … … XkXk XkXk cici cici cncn cncn c6c6 c6c6 c7c7 c7c7 c1c1 c1c1 c4c4 c4c4 c5c5 c5c5 c2c2 c2c2 c1c1 c1c1 c3c3 c3c3 c8c8 c8c8 … X E(X)

Private information retrieval [CGKS] Protocols that allow users to privately retrieve items from replicated DBs … X → E(X)

Private information retrieval Properties of the protocol: Information theoretic privacy ↔ smoothness Number of DB replicas needed ↔ locality Communication complexity ↔ codeword length Short smooth codes with low query complexity yield efficient PIR schemes. [Dvir Gopi’ 2014]: 2-server scheme with the same communication.

Reed Muller codes

Reed Muller codes: local decoding

Reed Muller codes: parameters Reducing codeword length of locally decodable codes is a major open problem. Better codes are known Multiplicity codes [KSY] Matching vector codes [Y,E]

Part II: Distributed storage

Data storage Store data reliably Keep it readily available for users

Data storage: Replication Store data reliably Keep it readily available for users Very large overhead Moderate reliability Local recovery: Lose one machine, access one

Data storage: Erasure coding Store data reliably Keep it readily available for users … …… Need: Erasure codes with local decoding

Codes for data storage X1X1 X1X1 X2X2 X2X2 XkXk XkXk … … P1P1 P1P1 … … P n-k

Local reconstruction codes

X1X1 X1X1 XrXr XrXr … … X k-r XkXk XkXk … … HhHh HhHh H1H1 H1H1 L1L1 L1L1 LgLg LgLg … … … … … … Light parities Heavy parities Data symbols Local group

Local reconstruction codes X1X1 X1X1 XrXr XrXr … … X k-r XkXk XkXk … … HhHh HhHh H1H1 H1H1 L1L1 L1L1 LgLg LgLg … … … … … … Light parities Heavy parities Data symbols Local group

Reliability X1X1 X1X1 L1L1 L1L1 X2X2 X2X2 X3X3 X3X3 X4X4 X4X4 X5X5 X5X5 X6X6 X6X6 X7X7 X7X7 X8X8 X8X8 H3H3 H3H3 H2H2 H2H2 H1H1 H1H1 L2L2 L2L2

X1X1 X1X1 L1L1 L1L1 All 4-failure patterns are correctable. X2X2 X2X2 X3X3 X3X3 X4X4 X4X4 X5X5 X5X5 X6X6 X6X6 X7X7 X7X7 X8X8 X8X8 H3H3 H3H3 H2H2 H2H2 H1H1 H1H1 L2L2 L2L2

Reliability X1X1 X1X1 L1L1 L1L1 All 4-failure patterns are correctable. Some 5-failure patterns are not correctable. X2X2 X2X2 X3X3 X3X3 X4X4 X4X4 X5X5 X5X5 X6X6 X6X6 X7X7 X7X7 X8X8 X8X8 H3H3 H3H3 H2H2 H2H2 H1H1 H1H1 L2L2 L2L2

Reliability X1X1 X1X1 L1L1 L1L1 All 4-failure patterns are correctable. Some 5-failure patterns are not correctable. Other 5-failure patterns might be correctable. X2X2 X2X2 X3X3 X3X3 X4X4 X4X4 X5X5 X5X5 X6X6 X6X6 X7X7 X7X7 X8X8 X8X8 H3H3 H3H3 H2H2 H2H2 H1H1 H1H1 L2L2 L2L2

Reliability X1X1 X1X1 L1L1 L1L1 All 4-failure patterns are correctable. Some 5-failure patterns are not correctable. Other 5-failure patterns might be correctable. X2X2 X2X2 X3X3 X3X3 X4X4 X4X4 X5X5 X5X5 X6X6 X6X6 X7X7 X7X7 X8X8 X8X8 H3H3 H3H3 H2H2 H2H2 H1H1 H1H1 L2L2 L2L2

Combinatorics of correctable failure patterns X1X1 X1X1 L1L1 L1L1 X2X2 X2X2 X3X3 X3X3 X4X4 X4X4 X5X5 X5X5 X6X6 X6X6 X7X7 X7X7 X8X8 X8X8 H3H3 H3H3 H2H2 H2H2 H1H1 H1H1 L2L2 L2L2 X1X1 X1X1 L1L1 L1L1 X2X2 X2X2 X3X3 X3X3 X4X4 X4X4 X5X5 X5X5 X6X6 X6X6 X7X7 X7X7 X8X8 X8X8 H3H3 H3H3 H2H2 H2H2 H1H1 H1H1 L2L2 L2L2 Theorem: If a failure pattern that is not regular; then it is not correctable by any LRC. There exist LRCs that correct all regular failure patterns.

Maximally recoverable codes The tradeoff: Larger fields allow for more reliable codes up to maximal recoverability. We want both: small field size (efficiency) and maximal recoverability.

Explicit maximally recoverable codes

Code construction We use dual constraints to specify the code. … … …… 11…11 11…11 h …

Erasure correction k=8, r=4, h=

Looking forward