File System Driven RAID Rebuild for SSD Arrays

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current storage systems face challenges with write amplification and read load due to internal SSD garbage collection, fragmented data, RAID-related operations, and reorganization of data and parity during changes in storage devices, which hinder efficient storage capacity expansion and user access.

Innovation Solution

A file system-driven RAID rebuild technique that organizes data into segments across SSDs, allowing for segment-by-segment RAID configuration and parity distribution, enabling immediate capacity expansion without redistributing parity and utilizing all SSDs as part of a segment pool without dedicated spares.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional RAID rebuild is performed after SSD failure, then data redundancy is restored, but write amplification increases due to redistribution of data and parity across all SSDs

Engineering Contradiction:
Improvedata redundancyVSAvoidwrite amplification
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent segments the storage system into multiple segments, each with its own local parity SSD. When a failure occurs, only the affected segment undergoes rebuild operations rather than redistributing data across the entire RAID array. This localized approach restores redundancy for the failed segment while avoiding write amplification from system-wide redistribution operations.

Inventive Principle:
Principle #1Segmentation

2Speed

If distributed parity RAID configuration is used to reduce read load, then read performance improves, but write amplification increases when storage devices are added or removed due to redistribution requirements

Engineering Contradiction:
Improveread loadVSAvoidwrite amplification during reconfiguration
Core Design Contradiction:
SpeedVSLoss of energy

Solution Approach 1:

The storage system is divided into independent segments with local parity SSDs. Each segment can be reconfigured independently when storage devices are added or removed, eliminating the need for system-wide redistribution. This maintains the read performance benefits of distributed parity while avoiding write amplification during reconfiguration operations.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements dynamic segment formation where segments are created or modified based on current storage device availability. When SSDs are added or removed, the system dynamically reorganizes segments to utilize available resources without requiring redistribution of data across the entire array, thus avoiding write amplification while maintaining flexible read load distribution.

Inventive Principle:
Principle #15Dynamics

3Quantity of substance

If segment cleaning is performed to free SSD chunks for new segments, then storage capacity is released, but RAID configuration must be rebuilt affecting system availability

Engineering Contradiction:
Improvestorage capacityVSAvoidsystem availability during rebuild
Core Design Contradiction:
Quantity of substanceVSLoss of time

Solution Approach 1:

By organizing storage into independent segments with local parity, the patent enables isolated segment cleaning operations. When SSD chunks need to be freed for new segments, only the affected segment undergoes cleaning and potential rebuild, while other segments remain fully operational. This segmentation approach releases storage capacity locally without causing system-wide unavailability.

Inventive Principle:
Principle #1Segmentation

4Ease of repair

If dedicated spare SSDs are allocated for RAID groups, then failure recovery is simplified, but storage capacity is wasted and cannot be used for user data

Engineering Contradiction:
Improvefailure recoveryVSAvoidusable storage capacity
Core Design Contradiction:
Ease of repairVSQuantity of substance

Solution Approach 1:

The patent implements a universal pool of SSDs that serve multiple functions: data storage, parity storage, and failure recovery. Instead of dedicating specific SSDs as spares, any available SSD in the pool can be allocated to replace a failed SSD or form new segments. This multi-functional approach simplifies recovery operations while maximizing usable storage capacity, as all SSDs contribute to either data storage or redundancy rather than being idle spares.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS10013311B2File system driven raid rebuild technique
Publication Date: 2018.07.03 NETAPP INC
  • US10013311B2 patent drawing
  • US10013311B2 patent drawing
  • US10013311B2 patent drawing

AI summary

Embodiments described herein are directed to a file system driven RAID rebuild technique. A layered file system may organize storage of data as segments spanning one or more sets of storage devices, such as solid state drives (SSDs), of a storage array, wherein each set of SSDs may form a RAID group configured to provide data redundancy for a segment. The file system may then drive (i.e., initiate) rebuild of a RAID configuration of the SSDs on a segment-by-segment basis in response to cleaning of the segment (i.e., segment cleaning). Each segment may include one or more RAID stripes that provide a level of data redundancy (e.g., single parity RAID 5 or double parity RAID 6) as well as RAID organization (i.e., distribution of data and parity) for the segment. Notably, the level of data redundancy and RAID organization may differ among the segments of the array.