Greedy Packing Algorithm for Storage Track Utilization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

High-capacity data storage systems like SANs face inefficiencies in resource utilization due to fixed-size back-end tracks, leading to wasted space when packing variable-size front-end tracks, which affects metadata management and drive utilization.

Innovation Solution

Implement a method where compute nodes in a data storage system sort front-end tracks by size, match them with cached packing solutions, and pack them into slices, using a greedy first fit packing algorithm to optimize space utilization.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of manufacture

If fixed-size back-end tracks are used for storage allocation, then metadata management becomes simpler and more practical, but storage resource utilization efficiency decreases due to unused space in tracks

Engineering Contradiction:
Improvemetadata managementVSAvoidstorage resource utilization efficiency
Core Design Contradiction:
Ease of manufactureVSLoss of energy

Solution Approach 1:

The patent segments front-end tracks of varying sizes into groups and packs multiple smaller tracks into single back-end tracks. This segmentation allows efficient utilization of fixed-size back-end tracks while maintaining simplified metadata management, as the system only needs to track packed units rather than individual variable-size tracks.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent merges multiple front-end tracks into single back-end tracks through a packing mechanism. By combining several smaller tracks into one larger fixed-size track, the system eliminates unused space and improves storage utilization while keeping metadata management straightforward.

Inventive Principle:
Principle #5Merging (Combining)

2Loss of energy

If variable-size front-end tracks are packed into fixed-size back-end tracks, then storage resource utilization improves, but the complexity of the packing algorithm and processing increases

Engineering Contradiction:
Improvestorage resource utilizationVSAvoidpacking algorithm complexity
Core Design Contradiction:
Loss of energyVSDevice complexity

Solution Approach 1:

The patent applies preliminary actions by pre-sorting front-end tracks into buckets based on size categories before packing. This pre-processing step simplifies the subsequent packing algorithm, as tracks are already organized by size, making it easier to match them with appropriate back-end tracks and reducing computational complexity.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent changes the parameter of track organization by sorting tracks into size-based buckets. This parameter transformation converts the packing problem from handling arbitrary variable-size tracks to systematically matching tracks within size categories, simplifying the packing algorithm while maintaining high storage utilization.

Inventive Principle:
Principle #35Parameter changes

3Productivity

If larger capacity back-end tracks are used, then memory and processing burden for metadata management is reduced, but drive utilization efficiency decreases due to more unused space

Engineering Contradiction:
Improvemetadata management efficiencyVSAvoiddrive utilization efficiency
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

The patent introduces a new dimension of organization by implementing size-based bucketing of front-end tracks. This additional organizational dimension allows the system to efficiently pack tracks of various sizes into fixed-size back-end tracks, simultaneously achieving good metadata management scalability and high drive utilization.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

Solution Approach 2:

The patent creates a mapping structure that copies the essential information about packed tracks into metadata. This copying approach allows the system to manage large back-end tracks efficiently by maintaining simplified metadata representations that track the contents and usage of each packed unit without requiring complex management of every individual track.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS11340805B1Greedy packing algorithm with caching and ranking
Publication Date: 2022.05.24 EMC IP HLDG CO LLC
  • US11340805B1 patent drawing
  • US11340805B1 patent drawing
  • US11340805B1 patent drawing

AI summary

A storage array packs multiple non-full-size front-end tracks into slices that contain multiple back-end tracks. A greedy first fit packing algorithm is used to find packing solutions that are cached and ranked. The cached, ranked packing solutions are used by attempting to find matches with bucketed front-end tracks to be relocated. New packing solutions are generated and cached when matches cannot be found. Packing solutions may be shared outside the domain in which they are discovered.