Adaptive Erasure Coding for Storage Reliability

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing RAID systems are inefficient in data recovery due to performance differences between storage devices, which can lead to data loss and reduced system reliability.

Innovation Solution

A storage system and method of data recovery that utilize multiple erasure coding schemes, allowing for the selection of a target scheme based on device characteristics or data characteristics, enabling efficient data restoration regardless of storage device performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If RAID systems use a single erasure coding scheme for all storage devices, then data recovery can be performed, but system performance is limited by the lowest performance storage device

Engineering Contradiction:
Improvedata recovery capabilityVSAvoidsystem performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent applies local quality by assigning different erasure coding schemes to different storage devices based on their individual performance characteristics. Fast storage devices are assigned schemes with fewer parity blocks (e.g., (4,1) or (4,2)), while slow storage devices are assigned schemes with more parity blocks (e.g., (4,3) or (4,4)). This allows each storage device to operate at its optimal performance level without being constrained by the slowest device in the system.

Inventive Principle:
Principle #3Local quality

2Reliability

If RAID 0 uses mirror copy for data recovery, then data loss can be recovered, but memory resources are not used efficiently

Engineering Contradiction:
Improvedata recovery capabilityVSAvoidmemory resource utilization
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent changes the parameter of data distribution by using erasure coding instead of simple mirroring. Instead of creating exact copies of data (mirror copy), the system encodes data into multiple segments with different redundancy levels. This allows more efficient use of storage capacity while maintaining data recovery capability, as parity blocks can be dynamically adjusted based on storage device performance and data importance.

Inventive Principle:
Principle #35Parameter changes

3Reliability

If RAID 5 strips data into segments with one parity segment, then data recovery for single failure is provided, but it cannot handle multiple failures and performance differences

Engineering Contradiction:
Improvedata recovery capabilityVSAvoidhandling multiple failures and performance differences
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The patent applies dynamics by making the erasure coding scheme flexible and adaptable rather than fixed. The system can dynamically select different coding schemes (e.g., (4,1), (4,2), (4,3), (4,4)) based on real-time conditions such as storage device performance, data importance, and failure patterns. This allows the system to adapt to multiple failure scenarios and performance differences among storage devices, going beyond the static single-parity limitation of traditional RAID 5.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS12314133B2Method of data recovery and storage system performing the same
Publication Date: 2025.05.27 SAMSUNG ELECTRONICS CO LTD
  • US12314133B2 patent drawing
  • US12314133B2 patent drawing
  • US12314133B2 patent drawing

AI summary

A storage system includes: an interconnector; a plurality of storage devices connected to the interconnector and configured to store data; a host device connected to the interconnector, and configured to: set a plurality of erasure coding schemes that are different from each other, and determine a target erasure coding scheme corresponding to original data to be stored in the plurality of storage devices among the plurality of erasure coding schemes, based on device characteristics of the plurality of storage devices or data characteristics of the original data; and an erasure coding controller configured to: divide the original data into a plurality of data blocks corresponding to the target erasure coding scheme, and generate one or more parity blocks corresponding to the target erasure coding scheme, by encoding the plurality of data blocks.