Data Stripe Error Correction for Faster Storage Recovery

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Data storage systems face challenges in maintaining reliable and fast data access due to corruption caused by component failures and external events, requiring effective error correction and recovery mechanisms.

Innovation Solution

A data storage system apparatus and method that includes a data request input module, a controller instruction module, and a data packaging module to decode code words, determine error handling operations, and generate requested data based on error status information, utilizing linear block code error correction and stripe-wise error handling to correct errors and recover data.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If error correction mechanisms are implemented to mitigate data corruption, then data reliability is improved, but system complexity and processing time increase

Engineering Contradiction:
Improvedata reliabilityVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The data storage system divides data into multiple code words organized in data stripes across different storage devices. This segmentation allows error correction to be applied locally to individual code words rather than requiring system-wide complex processing, reducing overall system complexity while maintaining reliability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Error correction information is pre-calculated and stored alongside the data during the encoding phase. When data retrieval occurs, the pre-prepared error correction information is immediately available, eliminating the need for complex real-time error analysis and reducing processing time.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If error correction decoding is performed on corrupted code words, then data recovery is improved, but processing time increases

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

Solution Approach 1:

The error correction process focuses only on the specific code words that are corrupted or suspected to be corrupted, rather than processing all data uniformly. This localized approach reduces the overall processing time while ensuring complete data recovery for affected portions.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The system creates and stores multiple copies (replicas) of data across different storage devices. When corruption is detected in one code word, the system can quickly retrieve a clean copy from another storage device without performing complex error correction, significantly reducing processing time.

Inventive Principle:
Principle #26Copying

3Reliability

If data is distributed across multiple storage devices in data stripes, then fault tolerance is improved, but access time increases

Engineering Contradiction:
Improvefault toleranceVSAvoidaccess time
Core Design Contradiction:
ReliabilityVSSpeed

Solution Approach 1:

The system combines multiple code words from different storage devices into complete data stripes that can be processed together. This merging allows parallel processing of data across multiple devices, maintaining fast access times while preserving the fault tolerance benefits of distributed storage.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

Each storage device is equipped with local controllers that can independently decode and verify their stored code words. This self-service capability allows devices to quickly identify and handle corrupted data locally without requiring centralized coordination, reducing overall access time while maintaining distributed fault tolerance.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS10705910B2Method and apparatus for operating a data storage system
Publication Date: 2020.07.07 CLOUD INTELLIGENCE ASSETS HOLDING (SINGAPORE) PTE LTD
  • US10705910B2 patent drawing
  • US10705910B2 patent drawing
  • US10705910B2 patent drawing

AI summary

An apparatus for operating a storage system is provided. The apparatus is coupled with one or more storage devices and one or more controllers and comprises a data request input module configured to receive a request for data and determine a data stripe that includes the requested data. The apparatus further comprises a controller instruction module configured to instruct one or more controllers to perform a decoding of code words of the determined data stripe, wherein the code words are acquired by the controllers from the one or more storage devices, and determine, based on error status information associated with the decoding, an error handling operation on the data stripe to modify one or more code words of the data stripe. The apparatus also comprises a data packaging module configured to generate the requested data based on the modified at least one or more code words.