Erasure-Coded Storage Placement Using RAID Controllers and Placement Nodes

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Erasure-coded systems using RAID face performance degradation as system size scales or workload increases, particularly with software implementations of de-clustered placement schemes.

Innovation Solution

A method and system that utilize RAID controllers for computing data and parity blocks, combined with placement nodes to manage placement schemes across storage devices, allowing for efficient data and parity block placement, balancing cost, performance, and reliability by selecting appropriate placement schemes and updating or rebuilding data and parity blocks as needed.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If software implementations of de-clustered placement schemes are used, then reliability is improved, but performance deteriorates severely when system size scales or workload increases

Engineering Contradiction:
ImprovereliabilityVSAvoidperformance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system segments the placement management function by introducing dedicated placement nodes that handle de-clustered placement logic separately from the RAID controllers. This segmentation allows the RAID controllers to focus on high-speed parity computation while placement nodes optimize the data distribution strategy, resolving the contradiction between reliability improvement and performance degradation.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Placement nodes act as intermediaries between RAID controllers and storage devices. These intermediaries manage the complex de-clustered placement calculations and coordinate block distribution, enabling software-based reliability improvements without directly impacting the performance-critical parity computation path handled by hardware RAID controllers.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If hardware RAID controllers are used for parity computation, then performance is improved, but adaptability to different placement schemes deteriorates

Engineering Contradiction:
ImproveperformanceVSAvoidadaptability
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The patent extracts the placement scheme management functionality from the hardware RAID controllers and relocates it to software-based placement nodes. This extraction preserves the high-performance hardware parity computation while removing the adaptability constraint, allowing the system to dynamically support multiple placement schemes through software configuration.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

Placement nodes provide universal placement management capability that can handle multiple erasure code types and placement schemes (clustered, de-clustered, striped, etc.) through a single software component. This multi-functional approach allows hardware RAID controllers to maintain high performance while the system gains adaptability to various placement strategies.

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

Data Source

PatentUS9690657B2Writing data across storage devices in an erasure-coded system
Publication Date: 2017.06.27 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US9690657B2 patent drawing
  • US9690657B2 patent drawing
  • US9690657B2 patent drawing

AI summary

A computing device writes data across storage devices in an erasure-coded system. The computing device computes data blocks and parity blocks from data and computes a portion of the data to be stored in the system. The computing is performed by one or more controllers included in a redundant array of an independent disks controller. The computing device provides the locations of the data blocks and the parity blocks in storage devices of an erasure-coded system. The location is determined using one or more placement nodes. The placement nodes are configured for managing placement schemes of data blocks and parity blocks on the storage devices.