Erasure Code Fragment Rebalancing in Scale-Out Storage

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional storage area network (SAN) and network-attached storage (NAS) architectures are inadequate for supporting large multi-petabyte data storage and protection, necessitating the use of object storage technology like Elastic Cloud Storage (ECS) that employs erasure coding for data protection, but lacks a universal mechanism for efficient data rebalancing during cluster expansion or contraction.

Innovation Solution

A system and method for universal data rebalancing in scale-out/scale-up cloud-based object storage systems, which involves determining non-integer values representing portions of erasure-coded fragments to be transferred between nodes, using floor and ceiling functions to ensure balanced fragment distribution across nodes, thereby maintaining data availability and system performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If traditional SAN/NAS architectures are used for data storage, then data protection schemes like mirroring or parity protection can be employed, but the system cannot support large multi-petabyte capacity levels

Engineering Contradiction:
Improvestorage capacityVSAvoiddata protection
Core Design Contradiction:
Quantity of substanceVSReliability

Solution Approach 1:

The patent changes the fundamental parameter of data protection from traditional mirroring/parity schemes to erasure coding, which divides data into fragments and distributes them across multiple nodes. This allows the system to scale to multi-petabyte capacities while maintaining data protection through mathematical redundancy rather than simple duplication.

Inventive Principle:
Principle #35Parameter changes

2Quantity of substance

If erasure coding is used for data protection in scale-out storage systems, then large capacity levels can be supported, but the system lacks a universal mechanism for efficient data rebalancing during cluster expansion or contraction

Engineering Contradiction:
Improvestorage capacityVSAvoidrebalancing mechanism
Core Design Contradiction:
Quantity of substanceVSEase of operation

Solution Approach 1:

The patent calculates the target number of fragments per node before rebalancing operations begin, determining the ideal distribution state in advance. This preliminary calculation enables the system to efficiently guide the rebalancing process by knowing the destination state, reducing operational complexity during cluster expansion or contraction.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent segments the rebalancing process into individual fragment transfer operations, where each fragment is moved independently from source nodes to target nodes based on calculated requirements. This segmentation allows for fine-grained control and efficient parallel execution of rebalancing operations across the distributed cluster.

Inventive Principle:
Principle #1Segmentation

3Quantity of substance

If nodes are added to expand cluster capacity, then storage capacity increases, but fragment distribution becomes unbalanced requiring complex rebalancing operations

Engineering Contradiction:
Improvestorage capacityVSAvoidfragment distribution
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The patent implements a self-service rebalancing mechanism where the system automatically calculates fragment distribution requirements and executes transfers without manual intervention. The rebalancing algorithm autonomously determines which fragments to move and where to place them, reducing operational complexity while maintaining balanced fragment distribution across expanded cluster capacity.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS10732839B2Scale-out storage system rebalancing
Publication Date: 2020.08.04 EMC IP HLDG CO LLC
  • US10732839B2 patent drawing
  • US10732839B2 patent drawing
  • US10732839B2 patent drawing

AI summary

A universal mechanism is utilized for data rebalancing in a scaled-out data storage cluster. A value (l) representing a number of erasure coded fragments of each data portion that are to be moved to a newly added node can be calculated. Initially, the number of erasure coded fragments moved per data fragment is determined based on the greatest integer that is less than or equal to l and remainders are accumulated. When accumulated reminders equal or exceed l, the number of erasure coded fragments moved per data fragment is determined based on the lowest integer that is greater than or equal to l. A value of accumulated reminders is then decreased by l. Accordingly, system-level imbalances can be avoided and data availability, data robustness, and/or overall system performance can be increased.