Partitioned Stripe RAID Erasure Code

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional RAID storage systems face challenges in balancing overhead and speed due to constraints on packet size and number of packets, which limits flexibility in RAID erasure code application, particularly in achieving optimal performance for varying segment sizes and data segments.

Innovation Solution

A RAID controller that logically partitions a stripe into sub-stripes and applies RAID erasure codes independently to each sub-stripe, allowing for flexible determination of packet size and number of packets based on segment size, type of RAID erasure code, and acceleration testing, thereby overcoming constraints on packet size and number of packets.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If conventional RAID erasure codes are applied to entire stripes with fixed packet sizes, then the system maintains simplicity in implementation, but the flexibility to optimize for varying segment sizes and performance is reduced

Engineering Contradiction:
Improveflexibility in packet size and number of packetsVSAvoidcomplexity of RAID controller operations
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The stripe is divided into multiple sub-stripes, and each sub-stripe can be processed independently with different packet sizes and numbers of packets. This segmentation allows the system to adapt to varying segment sizes and optimize performance for different data patterns without constraining the entire stripe to a single fixed packet configuration.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system dynamically determines packet size and number of packets for each sub-stripe based on factors such as segment size, type of RAID erasure code, and acceleration testing. This dynamic adjustment replaces the conventional fixed packet size approach, enabling optimal performance adaptation while managing complexity through automated decision-making.

Inventive Principle:
Principle #15Dynamics

2Speed

If larger packet sizes are used to accelerate encoding and decoding, then processing speed improves, but the ability to handle varying segment sizes and optimize for different RAID erasure code types is reduced

Engineering Contradiction:
Improvespeed of RAID erasure code applicationVSAvoidadaptability to varying segment sizes and code types
Core Design Contradiction:
SpeedVSAdaptability or versatility

Solution Approach 1:

By segmenting the stripe into sub-stripes, the system can apply different packet sizes to different segments based on their specific requirements. This allows larger packets for performance-critical segments while using smaller packets for segments with varying sizes or different code types, thus maintaining both speed and adaptability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Each sub-stripe can be configured with locally optimized packet parameters rather than using a uniform configuration for the entire stripe. This local optimization enables the system to maximize speed for each segment while adapting to its specific characteristics, such as segment size and RAID erasure code type.

Inventive Principle:
Principle #3Local quality

3Productivity

If the RAID controller determines packet size and number of packets based on multiple factors including acceleration testing, then optimal performance is achieved, but the complexity of determining and selecting parameters increases

Engineering Contradiction:
Improveperformance of RAID erasure code applicationVSAvoidcomplexity of parameter determination and selection
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system performs acceleration testing in advance to determine optimal packet sizes and parameters before actual data processing. This preliminary action allows the RAID controller to select the best performance parameters without complex real-time calculations, reducing operational complexity while maintaining high productivity.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system uses acceleration testing results as feedback to guide parameter selection for different sub-stripes. This feedback mechanism enables automated optimization where the controller learns from performance data and selects parameters that maximize productivity, reducing the need for manual configuration and complex decision-making.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS9495246B2Raid erasure code applied to partitioned stripe
Publication Date: 2016.11.15 KAMINARIO TECH
  • US9495246B2 patent drawing
  • US9495246B2 patent drawing
  • US9495246B2 patent drawing

AI summary

The disclosure presents examples of a RAID storage system, method and computer program product where a stripe is logically partitioned into two or more sub-stripes and at least one RAID erasure code is applied to each sub-stripe independently of any other of the sub-stripe(s). Consequently, in some of these examples, a larger packet size may be used than if the stripe had not been partitioned. A larger packet size may in some cases allow for accelerated encoding and/or decoding.