Snapshot Metadata Node Consolidation for Memory Optimization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional snapshot mechanisms in data storage systems incur significant overhead, making it inefficient to maintain a large number of snapshots, which limits memory availability and impacts system performance.

Innovation Solution

The method involves consolidating free nodes in a data structure's pages to reduce memory usage by exchanging active nodes with free nodes from other pages, allowing for the de-allocation of memory pages, thereby optimizing memory footprint for snapshot metadata.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If conventional snapshot mechanisms using protection bits and session bits are used, then snapshot functionality is provided, but memory overhead increases significantly

Engineering Contradiction:
Improvesnapshot functionalityVSAvoidmemory overhead
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent extracts the snapshot metadata from the main data structure and stores it in a separate, optimized location. By separating the metadata (protection bits, session bits, snapshot identifiers) from the actual data, the system reduces the memory overhead incurred by conventional snapshot mechanisms while maintaining full snapshot functionality. This extraction allows the main data structure to remain compact while snapshot information is managed independently.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent segments the snapshot management into distinct components: protection bits are separated from data tracks, session bits are organized into dedicated sessions, and snapshot metadata is stored in a separate data structure. This segmentation allows each component to be optimized independently, reducing overall memory overhead while maintaining the reliability of snapshot operations.

Inventive Principle:
Principle #1Segmentation

2Reliability

If a large number of snapshots are maintained using conventional mechanisms, then comprehensive data protection is achieved, but system performance deteriorates due to overhead

Engineering Contradiction:
Improvedata protectionVSAvoidsystem performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent uses efficient copying mechanisms where snapshot metadata is copied and stored in an optimized format separate from the main data structure. By copying only the essential snapshot information (protection bits, session identifiers, track pointers) rather than duplicating entire data sets, the system maintains comprehensive data protection while minimizing the performance impact of managing multiple snapshots.

Inventive Principle:
Principle #26Copying

3Loss of information

If snapshot metadata is stored in a detailed data structure, then snapshot information is complete, but memory consumption increases

Engineering Contradiction:
Improvesnapshot information completenessVSAvoidmemory consumption
Core Design Contradiction:
Loss of informationVSQuantity of substance

Solution Approach 1:

The patent inverts the conventional approach by storing minimal snapshot metadata in an optimized data structure rather than storing complete snapshot data. By keeping only the essential pointers and identifiers (protection bits, session bits, track pointers) and referencing the actual data locations, the system maintains complete snapshot information while significantly reducing memory consumption. The detailed information is preserved through efficient referencing rather than direct storage.

Inventive Principle:
Principle #13The other way round (Inversion)

Data Source

PatentUS11100008B2Efficient memory usage for snapshots
Publication Date: 2021.08.24 EMC IP HLDG CO LLC
  • US11100008B2 patent drawing
  • US11100008B2 patent drawing
  • US11100008B2 patent drawing

AI summary

Memory may be used more efficiently for snapshot metadata by reducing a size of a snapshot metadata object, for example, by removing free nodes from the snapshot metadata object. Removing free nodes may include consolidating free nodes into a single page of a snapshot metadata object and de-allocating the page from the memory allocated for the data structure. Consolidation of free nodes may be achieved by identifying active nodes in the single page, and swapping these active nodes with free nodes from other pages until the single page includes only free nodes. The nodes of the single page that were already free and the active nodes that were swapped with free nodes from another page may be designated for de-allocation. This designating may result in all nodes of the single page being designated for de-allocation, after which the single page of nodes may be de-allocated.