Operation Execution Schedule for Dispersed Storage Networks

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current dispersed storage networks face challenges in maintaining data integrity and availability across geographically distributed storage units, particularly in handling errors and failures without redundant copies, while also ensuring secure and efficient data storage and retrieval.

Innovation Solution

The implementation of a dispersed storage network (DSN) that uses error encoding techniques, such as Cauchy Reed-Solomon encoding, to distribute data across multiple storage units, allowing for data recovery from a subset of encoded slices and managing storage operations through a managing unit and integrity processing unit, which coordinates data encoding, decoding, and error rebuilding, while establishing an operation execution schedule to optimize resource utilization.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If data is distributed across multiple storage units using error encoding, then data availability and fault tolerance 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 distributed across different storage units. Each slice is a portion of the original data transformed through error encoding (e.g., Reed-Solomon), allowing the system to reconstruct the original data from any sufficient subset of slices, thereby improving availability without requiring redundant copies of the entire data set.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a coordinating entity that manages the distribution, retrieval, and reconstruction of encoded data slices. This intermediary handles the complexity of error encoding/decoding operations and coordinates communication between storage units, isolating the computational complexity from the storage units themselves while maintaining high data availability.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If operations are scheduled to optimize resource utilization, then resource allocation efficiency is improved, but operation coordination complexity increases

Engineering Contradiction:
Improveresource allocation efficiencyVSAvoidoperation coordination complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent implements operation scheduling that anticipates future resource needs and pre-coordinates tasks before they execute. By establishing execution schedules in advance and pre-allocating resources, the system optimizes resource utilization and avoids last-minute coordination conflicts, thereby improving productivity while managing coordination complexity through forward planning.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent incorporates feedback mechanisms where the coordinating entity monitors resource usage and operation progress in real-time, adjusting schedules dynamically. This feedback loop allows the system to respond to changing conditions, optimize resource allocation continuously, and maintain coordination efficiency even as system state evolves.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS10831600B1Establishing an operation execution schedule in a storage network
Publication Date: 2020.11.10 PURE STORAGE INC
  • US10831600B1 patent drawing
  • US10831600B1 patent drawing
  • US10831600B1 patent drawing

AI summary

A method for execution by a dispersed storage and task (DST) execution unit includes identifying a plurality of pending operations. A resource availability level to support execution of at least one of the plurality of pending operations is determined, and a required resource level to execute the at least one of the plurality of pending operations is determined. A balance factor between at least two types of the plurality of pending operations is determined based on the resource availability level and the required resource level. Determination of required timing of the execution of the at least one of the plurality of pending operations is coordinated with at least one other DST execution unit. An operation execution schedule is updated based on the required resource levels, the resource availability level, the balance factor, and the required timing of the execution.