Hybrid Distributed Storage System for Concurrent Failure Tolerance

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current distributed object storage systems face inefficiencies in storage overhead and input/output operations, particularly when dealing with concurrent failures of storage elements, as they either incur high storage capacity overhead or suffer from increased input/output operations due to the high number of fragments spread across multiple storage elements.

Innovation Solution

A distributed object storage system that employs a hybrid encoding method, utilizing a spreading module to select level-1 and level-2 fragment storage subsets and a hybrid encoding module to generate and store fragments, allowing for efficient storage and retrieval while tolerating multiple concurrent failures without the need for synchronization between storage elements.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If replication is used to achieve redundancy, then reliability is improved, but storage capacity overhead increases significantly

Engineering Contradiction:
Improveconcurrent failure toleranceVSAvoidstorage capacity overhead
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The data object is divided into multiple fragments through erasure encoding, which are then distributed across storage elements. This segmentation allows the system to achieve redundancy without storing complete replicas of the entire data object, thereby reducing storage overhead while maintaining reliability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system changes the redundancy parameter from traditional replication (storing complete copies) to erasure coding (storing encoded fragments). This parameter change enables the system to tolerate concurrent failures with significantly lower storage overhead, as the encoded fragments can be reconstructed to recover the original data object even when some storage elements fail.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If a high number of fragments are spread across multiple storage elements, then concurrent failure tolerance is improved, but input/output operations increase

Engineering Contradiction:
Improveconcurrent failure toleranceVSAvoidinput/output operations
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system performs preliminary encoding of the data object into fragments before distribution. This preliminary action organizes the data in advance, allowing the system to tolerate failures without requiring complex real-time operations during failure events, thereby reducing the I/O burden during normal operations and failure recovery.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system extracts only the necessary number of fragments needed for reconstruction, rather than requiring access to all distributed fragments. This extraction principle allows the system to tolerate concurrent failures by only retrieving the minimum required fragments for data recovery, thereby minimizing I/O operations during failure scenarios.

Inventive Principle:
Principle #2Taking out (Extraction)

3Quantity of substance

If RAID systems are used for distributed storage, then storage capacity overhead is reduced, but synchronization complexity and rebuild time increase

Engineering Contradiction:
Improvestorage capacity overheadVSAvoidsynchronization complexity
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The system uses erasure coding to generate encoded copies of data fragments rather than requiring exact replicas. This copying approach through encoding allows the system to achieve redundancy with less storage overhead than traditional RAID while avoiding the synchronization complexity, as each fragment can be independently encoded and distributed without requiring coordinated updates across all storage elements.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS10241872B2Hybrid distributed storage system
Publication Date: 2019.03.26 WESTERN DIGITAL TECHNOLOGIES INC
  • US10241872B2 patent drawing
  • US10241872B2 patent drawing
  • US10241872B2 patent drawing

AI summary

There is provided a distributed object storage system that includes several performance optimizations with respect to efficiently storing data objects when coping with a desired concurrent failure tolerance of concurrent failures of storage elements which is greater than two and with respect to optimizing encoding/decoding overhead and the number of input and output operations at the level of the storage elements.