Adaptive Write Thresholds for Distributed Storage Replication

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Prior art data storage systems fail to maintain high performance levels due to variability in network operations and latency, and they lack adequate means to handle failures effectively, leading to degraded performance.

Innovation Solution

A dispersed storage network (DSN) with error encoding and decoding capabilities, utilizing Cauchy Reed-Solomon encoding, manages data distribution across multiple storage units, allowing for adaptive adjustment of write thresholds and extra slices to optimize performance and resource utilization based on monitored write transfer rates and failure rates.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If data is stored using traditional RAID or dispersed storage systems, then data redundancy and reliability are provided, but performance degrades due to network variability and latency

Engineering Contradiction:
Improvedata reliabilityVSAvoidstorage performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system dynamically adjusts the write threshold parameter based on real-time monitoring of storage unit performance and failure rates. This allows the system to adapt to changing network conditions and storage unit reliability, optimizing the balance between data reliability and write performance without requiring static conservative thresholds

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system implements continuous monitoring of write transfer rates and failure rates, using this feedback to adaptively adjust write thresholds. This closed-loop control enables the system to respond to performance degradation and maintain optimal operation under varying network conditions

Inventive Principle:
Principle #23Feedback

2Reliability

If write threshold is increased to tolerate more failures, then data reliability improves, but write latency increases

Engineering Contradiction:
Improvefailure toleranceVSAvoidwrite latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The write threshold is transformed from a static parameter to a dynamic one that adjusts based on monitored failure rates and performance metrics. This allows the system to increase reliability through higher thresholds only when necessary, rather than maintaining consistently high thresholds that would always increase latency

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the write threshold parameter adaptively based on operating conditions. By monitoring failure rates and performance, the system adjusts this critical parameter to achieve the minimum necessary reliability while minimizing the impact on write latency

Inventive Principle:
Principle #35Parameter changes

3Productivity

If extra slices are added to improve performance, then write throughput increases, but resource utilization increases

Engineering Contradiction:
Improvewrite throughputVSAvoidstorage resources
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The system uses extra slices beyond the minimum required for data recovery as a performance optimization technique. By adding a controlled number of extra slices, the system improves write throughput through better parallelization and load distribution, while accepting increased resource utilization only when performance benefits are achieved

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS11640248B2Variable write threshold storage replication sites in a distributed storage network
Publication Date: 2023.05.02 PURE STORAGE INC
  • US11640248B2 patent drawing
  • US11640248B2 patent drawing
  • US11640248B2 patent drawing

AI summary

A computing device including a processing module configured to receive a read request for a read threshold number of encoded data slices of the set of encoded data slices, determine whether a read threshold number of encoded data slices of the set of encoded data slices is available in a set of storage units associated with a first storage site and when a read threshold number of encoded data slices of the set of encoded data slices is not available in the set of storage units associated with a first storage site, transmit a read request for a read threshold number of encoded data slices to the set of storage units associated with a second storage site.