Dispersed Storage Network Post-Rebuild Verification

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current dispersed storage networks face challenges in maintaining data integrity and security, particularly in handling errors and failures across geographically distributed storage units, which can lead to data loss and unauthorized access.

Innovation Solution

The implementation of a dispersed storage network (DSN) with a managing unit and integrity processing unit that employs error encoding and decoding techniques, such as Cauchy Reed-Solomon encoding, to distribute data across multiple storage units, ensuring data recovery and security through encoded data slices and slice names, and remote storage verification processes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If data is distributed across multiple storage units using error encoding, then data reliability and tolerance to storage unit failures are improved, but system complexity increases

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

Solution Approach 1:

The patent divides data into multiple encoded slices and distributes them across different storage units. Each slice is a segment of the encoded data, allowing the system to tolerate failures of individual storage units while maintaining overall data integrity through the distributed nature of the segmentation.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces an integrity processing unit that acts as an intermediary to manage the complexity of error encoding and decoding operations. This dedicated component handles the computational burden of maintaining data integrity, separating this function from individual storage units and centralizing the complexity management.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If remote storage verification is implemented to ensure data security, then data security and detection of unauthorized changes are improved, but processing time and operational complexity increase

Engineering Contradiction:
Improvedata securityVSAvoidverification time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent implements preliminary verification by having storage units send proof of possession messages containing encoded data slices to the integrity processing unit immediately after data is written or before critical operations. This proactive verification approach detects unauthorized changes early rather than waiting for failure scenarios.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent establishes a feedback mechanism where the integrity processing unit continuously monitors storage units by requesting and verifying encoded data slices. This ongoing feedback loop provides real-time detection of data integrity issues and unauthorized modifications, allowing for prompt corrective action.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS10922179B2Post rebuild verification
Publication Date: 2021.02.16 PURE STORAGE INC
  • US10922179B2 patent drawing
  • US10922179B2 patent drawing
  • US10922179B2 patent drawing

AI summary

A method for execution by a dispersed storage network (DSN), the method begins by determining a slice name of an encoded data slice to verify, obtaining the encoded data slice and optionally compressing the encoded data slice, determining a dispersed storage (DS) unit of the stored set of DS units to produce a selected DS unit, sending the compressed encoded data slice request message to the selected DS unit, receiving a compressed encoded data slice response message to produce a selected compressed encoded data slice, determining a compressed encoded data slice partial of the encoded data slice, determining whether a sum of compressed encoded data slice partials compares favorably to the selected compressed encoded data slice, indicating a failed test when the processing module determines that the comparison is not favorable and indicating a passed test when the processing module determines that the comparison is favorable.