Storage Segment Identifier for Partial Data Rebuild

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In storage systems, data recovery processes consume resources and increase response times due to the need to read and process data from operational units, especially when a storage unit fails, leading to a degraded mode of operation and vulnerability to permanent data loss, with full or partial rebuilds requiring significant processing and resource allocation.

Innovation Solution

The use of a log structured file system with segment identifiers to determine which data segments need to be rebuilt during a partial rebuild process, where segment identifiers are stored in persistent storage, allowing the system to identify and rebuild only necessary segments, reducing the resource overhead and recovery time.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a full rebuild is performed to recover all data from a failed storage unit, then data reliability is improved, but resource consumption and recovery time increase significantly

Engineering Contradiction:
Improvedata recovery completenessVSAvoidrecovery time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs preliminary actions by storing the maximum segment identifier in persistent storage before a failure occurs. This pre-stored information enables the system to immediately identify which data segments need reconstruction after a failure, eliminating the need to scan through all data to determine what needs rebuilding, thus significantly reducing recovery time while maintaining completeness.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

Instead of always performing a full rebuild, the system performs a partial rebuild by using the pre-stored maximum segment identifier to determine only the subset of data segments that need reconstruction. This partial action approach reduces resource consumption and time while ensuring all necessary data is recovered.

Inventive Principle:
Principle #16Partial or excessive action

2Reliability

If data recovery operations are performed to replace stale data, then data reliability is improved, but storage system response time to host requests increases

Engineering Contradiction:
Improvedata freshnessVSAvoidstorage system response time
Core Design Contradiction:
ReliabilityVSSpeed

Solution Approach 1:

The maximum segment identifier is preliminarily stored in persistent storage before failures occur. When a failure is detected, this pre-stored value immediately enables the system to calculate the exact range of segments needing reconstruction, allowing recovery operations to start quickly and complete faster, thus minimizing the impact on host request response times.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system uses its own pre-stored maximum segment identifier information to autonomously determine the reconstruction scope without requiring external intervention or extensive scanning. This self-service capability enables rapid, efficient recovery that minimizes disruption to normal storage operations and host requests.

Inventive Principle:
Principle #25Self-service

3Productivity

If the storage system operates in degraded mode with reduced redundancy, then resource availability for normal operations is improved, but vulnerability to permanent data loss increases

Engineering Contradiction:
Improveresource availabilityVSAvoiddata loss vulnerability
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system preliminarily stores the maximum segment identifier in persistent storage, which enables rapid identification of data needing reconstruction. This allows the system to quickly perform targeted rebuilds of only the necessary segments, restoring full redundancy as soon as possible after a failure, thereby minimizing the duration of degraded mode operation and reducing exposure to data loss risks.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10684927B2Methods and systems for storing information that facilitates the reconstruction of at least some of the contents of a storage unit on a storage system
Publication Date: 2020.06.16 HEWLETT PACKARD ENTERPRISE DEV LP
  • US10684927B2 patent drawing
  • US10684927B2 patent drawing
  • US10684927B2 patent drawing

AI summary

The failure of a storage unit in a storage array of a storage system may render the storage unit unresponsive to any requests. Any writes to the storage system that occur during the failure of the storage unit will not be reflected on the failed unit, rendering some of the failed unit's data stale. Assuming the failed unit's data is not corrupted but is just stale, a partial rebuild may be performed on the failed unit, selectively reconstructing only data that is needed to replace the stale data. Described herein are techniques for storing information that identifies the data that needs to be rebuilt. When the storage unit fails, the segment identifier associated with the last data segment written to the storage system may be stored. Upon the storage unit recovering, the storage system can rebuild only those data segments whose identifier is greater than the stored segment identifier.