Orthogonal Erasure Coding for Local Data Center Reconstruction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing data storage systems face challenges in balancing reliability and cost, particularly in managing storage node failures across multiple data centers, where communication between centers is costly and time-consuming, and there is a need to reduce communication and storage space requirements while maintaining data integrity.

Innovation Solution

A computer-implemented method using linear error-correcting codes to generate and allocate row and column code chunks across storage nodes, allowing for localized reconstruction of damaged data within a data center without inter-data center communication, utilizing maximum distance separable (MDS) codes and error-detecting codes to identify and correct errors.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If data is stored redundantly across multiple data centers, then data reliability is improved, but communication cost and time increase when reconstructing damaged data

Engineering Contradiction:
Improvedata reliabilityVSAvoidcommunication time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent segments the error correction functionality into two independent codes: row code stored locally at each data center and column code distributed across data centers. This segmentation allows local reconstruction using row code without requiring communication with other data centers, thereby reducing communication time while maintaining reliability through the distributed column code structure.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a two-dimensional storage structure where data is organized in rows and columns, with row code chunks stored locally and column code chunks distributed across data centers. This dimensional organization enables local error correction within a data center using row code, eliminating the need for inter-data-center communication for routine error recovery, while column code provides cross-data-center redundancy.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Reliability

If error-correcting codes are used to correct errors, then data reliability is improved, but storage space requirements increase

Engineering Contradiction:
Improvedata reliabilityVSAvoidstorage space
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent applies partial error correction by using row code locally within each data center to correct errors without requiring full distributed reconstruction. This partial action approach corrects the most common failure scenarios (single data center failures) using only local storage space, while the column code provides additional protection only when necessary, thereby optimizing the trade-off between storage overhead and reliability.

Inventive Principle:
Principle #16Partial or excessive action

3Reliability

If communication between storage nodes is increased to reconstruct damaged chunks, then data integrity is maintained, but communication resources and costs increase

Engineering Contradiction:
Improvedata integrityVSAvoidcommunication resources
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The patent performs preliminary error correction using row code chunks that are pre-stored locally at each data center. This preliminary action enables immediate local reconstruction of damaged data without triggering inter-data-center communication, thereby maintaining data integrity while minimizing communication resource usage. The column code chunks serve as a backup correction mechanism only when local correction is insufficient.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS8719675B1Orthogonal coding for data storage, access, and maintenance
Publication Date: 2014.05.06 GOOGLE LLC
  • US8719675B1 patent drawing
  • US8719675B1 patent drawing
  • US8719675B1 patent drawing

AI summary

Methods, systems, and apparatus, including computer program products, for orthogonal coding for data storage. In one aspect, a method includes receiving a block of data comprising m rows and n columns of data chunks. For each row in the block of data, (c-n) columns of error-correcting row code chunks are generated using a first linear error-correcting code in systematic form and the particular row's data chunks. For each column in the block of data and for each generated column, particular column and (r-m) error-correcting column code chunks for the particular column are allocated to a distinct group of storage nodes, wherein: the column code chunks are generated using a second linear error-correcting code in systematic form and the particular column's data chunks or row code chunks; m and n are greater than one; and c is greater than n and r is greater than m.