Multi-Parity Data Storage Grid for Fast Reconstruction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing data storage systems face challenges with errors and failures that can lead to data loss and degrade system performance, particularly due to complex data reconstruction operations, especially with large volumes of sensitive data.

Innovation Solution

A data storage system employing multiple parity redundancy, where rotational parity is computed for logical rows and static parity for logical columns, allowing for efficient data reconstruction and adaptability to changing system conditions, including the addition or removal of data storage components, by utilizing a RAID controller to manage and distribute parity values across diverse data storage configurations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If complex data reconstruction operations are performed to recover from errors and failures, then data reliability is improved, but system performance degrades

Engineering Contradiction:
Improvedata reliabilityVSAvoidsystem performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent pre-computes and stores parity values (both row-level and column-level parity) in advance during normal operation. When data corruption or failure occurs, the system can immediately reconstruct lost data using these pre-computed parity values without performing complex real-time calculations, thus maintaining high system performance while ensuring data reliability.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent divides the data storage system into a grid structure with multiple rows and columns, computing parity at multiple levels (row-level parity and column-level parity). This segmentation allows the system to isolate and reconstruct only the specific corrupted data blocks using the corresponding parity information, rather than requiring complex reconstruction of the entire dataset, thereby improving both reliability and performance.

Inventive Principle:
Principle #1Segmentation

2Reliability

If multiple parity redundancy is implemented to protect against errors and failures, then data protection is improved, but device complexity increases

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

Solution Approach 1:

The patent organizes data into a structured grid with rows and columns, computing parity independently at each level. This segmentation simplifies the complexity by breaking down the redundant protection mechanism into manageable, independent parity calculations rather than requiring a single complex global parity system.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies different parity protection strategies at different levels of the data structure - row-level parity for horizontal protection and column-level parity for vertical protection. This local differentiation allows the system to provide comprehensive data protection while keeping each individual parity computation simple and localized, avoiding the need for a single complex protection mechanism.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS10459798B2Data storage system with multiple parity redundancy
Publication Date: 2019.10.29 SEAGATE TECH LLC
  • US10459798B2 patent drawing
  • US10459798B2 patent drawing
  • US10459798B2 patent drawing

AI summary

A data storage system can have multiple parity redundancy with a plurality of data storage units arranged into logical rows and logical columns. A controller connected to the plurality of data storage units can orchestrate the logical rows storing striped data having at least one rotational parity value and each logical column storing striped data with a static parity value. The static parity value of each logical column may be computed from the at least one rotational parity value of at least one logical row as directed by the controller.