Erasure Coding Garbage Collection for Cloud Storage

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The existing cloud storage systems incur unnecessary resource consumption due to redundant data replication during the garbage collection process, which results in wasteful use of storage and network resources.

Innovation Solution

Implementing a stream layer that directly converts identified good data into erasure-coded fragments, eliminating the need for data replication by distributing these fragments across multiple server nodes for durability, thereby optimizing disk space and network resource usage.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If data is replicated across multiple nodes during garbage collection, then data durability is improved, but storage and network resource consumption increases

Engineering Contradiction:
Improvedata durabilityVSAvoidstorage resource consumption
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent extracts only the necessary data fragments for durability protection through erasure coding, separating the essential durability function from the redundant replication process. By taking out only the minimal required data (k data fragments plus m parity fragments) and distributing them across nodes, the system achieves durability without unnecessary resource consumption.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent changes the replication parameter from traditional full-data replication to erasure coding with specific fragment counts. Instead of replicating entire extents multiple times, the system uses k data fragments and m parity fragments where k+m > n (number of nodes), achieving durability with reduced storage parameters and optimized resource usage.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If data is replicated across multiple nodes during garbage collection, then data durability is improved, but network resource consumption increases

Engineering Contradiction:
Improvedata durabilityVSAvoidnetwork resource consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The patent extracts only the essential data fragments needed for durability through erasure coding, eliminating unnecessary network traffic associated with replicating complete extents. By transferring only k data fragments and m parity fragments across the network rather than full extents, network resource consumption is significantly reduced while maintaining durability.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent applies partial action by transferring only the necessary fragments (k data + m parity) rather than complete extents. This partial transfer approach provides sufficient durability protection without the excessive network bandwidth consumption that would result from replicating entire extents across multiple nodes.

Inventive Principle:
Principle #16Partial or excessive action

3Reliability

If traditional replication process is used during garbage collection, then data durability is ensured, but processing time increases

Engineering Contradiction:
Improvedata durabilityVSAvoidgarbage collection processing time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent segments the data into k data fragments and m parity fragments through erasure coding, enabling parallel processing and independent distribution across nodes. This segmentation allows the garbage collection process to operate more efficiently by distributing work rather than replicating entire extents sequentially, reducing overall processing time while ensuring durability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs erasure coding and fragment distribution as preliminary actions during garbage collection, preparing data for durable storage before the extent is fully processed. This preliminary encoding and distribution reduces subsequent processing requirements and accelerates the overall garbage collection timeline while maintaining durability guarantees.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10558565B2Garbage collection implementing erasure coding
Publication Date: 2020.02.11 MICROSOFT TECHNOLOGY LICENSING LLC
  • US10558565B2 patent drawing
  • US10558565B2 patent drawing
  • US10558565B2 patent drawing

AI summary

Provided is a system and method for converting active data identified by a garbage collection operation into erasure coded fragments. In one example, the method may include identifying data blocks in use and interspersed among garbage data blocks not in use in cloud storage based on a garbage collection operation, extracting object data from the identified data blocks in use into a data container while leaving object data of the garbage data blocks not in use, and fragmenting a predetermined amount of extracted object data stored within the data container, the fragmenting comprising converting the predetermined amount of object data into a plurality of fragments including data fragments storing portions of the data and parity fragments for reconstructing the data, and writing the plurality of fragments in a distributed manner among a plurality of storage nodes.