Intelli-RAID Chunk Coalescing for Write Performance

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current RAID systems face inefficiencies due to small I/O operations leading to read-modify-write issues, space inflation, and slow resilvering processes, particularly with dynamic parity RAID configurations, which result in performance bottlenecks and storage inefficiencies.

Innovation Solution

The Intelli-RAID system coalesces small read and write chunks into larger chunks up to 1 MB, implements a new mapping layer, applies dynamic parity algorithms, and uses chunked block pointers to manage RAID file system memory, eliminating small I/Os and optimizing resilvering through chunked operations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If dynamic parity RAID configurations are used, then data protection and redundancy are improved, but read-modify-write issues and space inflation occur due to small I/O operations

Engineering Contradiction:
Improvedata protectionVSAvoidwrite performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments the RAID volume into chunks of a predetermined size (e.g., 1MB) and manages I/O operations at the chunk level rather than at the block level. This segmentation allows the system to coalesce multiple small I/O operations into fewer larger operations, reducing read-modify-write cycles while maintaining the data protection benefits of dynamic parity RAID.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements preliminary actions by pre-allocating chunks and preparing parity information in advance. When a write operation occurs, the system can directly write to pre-allocated chunks without needing to read-modify-existing chunks, thereby improving write performance while maintaining data protection through pre-computed parity information.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If small I/O operations are processed individually, then data integrity is maintained, but space inflation and performance bottlenecks occur

Engineering Contradiction:
Improvedata integrityVSAvoidstorage space usage
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent merges multiple small I/O operations into larger chunk-based operations. By coalescing sequential small writes and reads into operations that span entire chunks, the system reduces the total number of I/O operations and eliminates space inflation that occurs when each small operation is processed individually with its own metadata and alignment requirements.

Inventive Principle:
Principle #5Merging (Combining)

3Reliability

If traditional RAID resilvering processes are used, then data recovery is maintained, but resilvering speed is slow due to sequential processing

Engineering Contradiction:
Improvedata recoveryVSAvoidresilvering speed
Core Design Contradiction:
ReliabilityVSSpeed

Solution Approach 1:

The patent segments the resilvering process into parallel chunk-based operations. Instead of sequentially processing the entire RAID volume during recovery, the system divides the volume into chunks and processes them in parallel, significantly accelerating the resilvering speed while maintaining data recovery integrity through consistent chunk-level parity verification and reconstruction.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements dynamic resilience by enabling parallel resilvering operations that can adapt to varying data patterns and failure conditions. The system dynamically adjusts the resilvering process based on real-time conditions, allowing for faster recovery by processing multiple chunks simultaneously rather than following a fixed sequential recovery sequence.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS10838639B2Intelligent redundant array of independent disks
Publication Date: 2020.11.17 INTELLIFLASH BY DDN INC
  • US10838639B2 patent drawing
  • US10838639B2 patent drawing
  • US10838639B2 patent drawing

AI summary

A disclosed method for managing a RAID (redundant array of independent devices) file system memory comprises coalescing small read and write chunks into reasonably sized coalesced chunks up to 1 MB without any small size I/Os. The method also includes creating a new mapping layer configured to map the small size chunks in the coalesced chunks. The method additionally comprises flushing the coalesced chunks by allocating large chunks based on a chunk size coalescence or on a check point hit in terms of a SPA Sync. The method may also include applying a dynamic parity algorithm on the coalesced chunks to generate parities and data fragmented columns in reasonably big sized chunks. The method may yet include creating an appropriate coalesced chunk header to maintain the new mapping layer. The method may still comprise generating a chunked block pointer and a regular block pointer configured to co-exist in dual process threads.