Distributed Storage Network Replication Control

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current distributed computing systems face challenges in securely and reliably storing and retrieving large amounts of data across multiple geographically dispersed locations while ensuring data integrity and availability, particularly in the presence of failures and network issues.

Innovation Solution

A distributed computing system that employs dispersed error encoding and decoding techniques to split data into encoded slices, which are then stored and processed across multiple geographically dispersed units, allowing for secure, reliable, and fault-tolerant data storage and task processing, with mechanisms for error correction and data reconstruction.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If data is stored across multiple geographically dispersed locations, then data availability and security are improved, but system complexity increases

Engineering Contradiction:
Improvedata availabilityVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments data into multiple encoded slices that are distributed across different storage locations. Each slice is a portion of the original data, and together they reconstruct the complete data set. This segmentation enables the system to store data across multiple geographically dispersed locations while maintaining availability, as individual slices can be retrieved from different storage nodes.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces an intermediary error correction code layer between the data and storage locations. This intermediary component enables fault tolerance by allowing reconstruction of lost or corrupted slices without requiring direct access to all original storage locations, thereby managing system complexity while improving reliability.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If error correction codes are applied to data slices, then fault tolerance is improved, but processing time increases

Engineering Contradiction:
Improvefault toleranceVSAvoidprocessing time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent applies error correction codes in advance during the data encoding phase, before data is stored or transmitted. By performing this preliminary action, the system pre-computes the redundancy information needed for fault tolerance, eliminating the need for time-consuming error correction calculations during data retrieval or reconstruction operations.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent creates redundant copies of data through error correction coding, where the redundancy is distributed across multiple slices. This copying approach enables fast reconstruction by simply retrieving available slices and combining them, rather than performing complex real-time error correction calculations.

Inventive Principle:
Principle #26Copying

3Reliability

If data is split into encoded slices for distributed storage, then reliability is improved, but data retrieval complexity increases

Engineering Contradiction:
Improvedata integrityVSAvoiddata retrieval complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent designs the error correction code to serve multiple functions simultaneously: it provides fault tolerance, enables data reconstruction, and simplifies retrieval operations. The universal nature of the code allows the same mechanism to handle various scenarios including partial data loss, corruption, and reconstruction, thereby reducing retrieval complexity despite the distributed slice structure.

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

Data Source

PatentUS9565252B2Distributed storage network with replication control and methods for use therewith
Publication Date: 2017.02.07 PURE STORAGE INC
  • US9565252B2 patent drawing
  • US9565252B2 patent drawing
  • US9565252B2 patent drawing

AI summary

A method includes encoding input data into a plurality of slices. The plurality of slices are sent to a first plurality of distributed storage and task execution units for storage, the first plurality of distributed storage and task execution units being located at a corresponding first plurality of sites. Write slice data is received from the first plurality of distributed storage and task execution units. The method determines when replication is to be applied to the plurality of slices. When replication is to be applied to the plurality of slices, a second plurality of distributed storage and task execution units are selected, a plurality of replicated slices corresponding to the plurality of slices are generated, and the plurality of replicated slices are sent to the second plurality of distributed storage and task execution units.