Erasure-Coded Storage Pods for Faster Data Recovery

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Network storage resources often lose data due to hardware, software, or power failures, leading to data loss and unreliability in storing large amounts of data associated with personal devices.

Innovation Solution

Implementing erasure coding to generate data chunks and encoding chunks, which are then distributed and stored within groups of storage units, or 'pods', based on characteristics that minimize recovery time, such as latency and data throughput, with multiple instances of data stored across pods to ensure reliability and efficiency in data restoration.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If data is stored in network storage resources, then data storage capacity is improved, but data reliability deteriorates due to failures

Engineering Contradiction:
Improvedata storage capacityVSAvoiddata reliability
Core Design Contradiction:
Quantity of substanceVSReliability

Solution Approach 1:

The patent divides data into multiple chunks and distributes them across different storage units within pods. This segmentation allows the system to maintain data reliability by storing redundant information across multiple locations, so that if one storage unit fails, the data can still be recovered from other units.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs erasure coding in advance to generate encoded chunks before any failure occurs. These encoded chunks are stored alongside the original data chunks in the pod, creating a preliminary protective measure that enables rapid data recovery when failures happen, thus improving reliability without sacrificing storage capacity.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If data chunks are distributed across multiple storage units, then data recovery reliability is improved, but recovery time increases

Engineering Contradiction:
Improvedata recovery reliabilityVSAvoidrecovery time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent creates local pods of storage units with optimized connections and characteristics for fast data retrieval. By confining data chunks and their corresponding encoded chunks within the same pod with strong interconnections, the system enables rapid local recovery operations without needing to access distant storage units, thus reducing recovery time while maintaining reliability.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent introduces encoded chunks as intermediary elements that facilitate rapid data recovery. These encoded chunks act as mediators that can be quickly combined with remaining data chunks within the pod to reconstruct lost data, eliminating the need for time-consuming remote data retrieval and thus reducing overall recovery time.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If erasure coding is implemented to generate encoded chunks, then data reliability is improved, but system complexity increases

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

Solution Approach 1:

The patent creates simplified copies of data through erasure coding, generating encoded chunks that are mathematically derived from the original data chunks. These encoded copies enable reliable data recovery without requiring complex backup systems, as the encoding process transforms the data into a format that can be easily reconstructed using standard algebraic operations.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS9983959B2Erasure coding of data within a group of storage units based on connection characteristics
Publication Date: 2018.05.29 MICROSOFT TECHNOLOGY LICENSING LLC
  • US9983959B2 patent drawing
  • US9983959B2 patent drawing
  • US9983959B2 patent drawing

AI summary

The techniques and/or systems described herein implement erasure coding to generate various chunks for a data collection (e.g., data chunks and at least one encoding chunk). The chunks are then distributed and stored within an individual group (e.g., a pod) of storage units, where a pod of storage units is determined based on characteristics that affect an amount of time it takes to recover a data collection or to restore lost data.