Snapshot Mechanism for Thinly Provisioned Memory Volumes

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing snapshot mechanisms in computer memory are inefficient in terms of data and metadata space usage, performance, and flexibility, particularly in thinly provisioned systems and those employing data deduplication, as they often require extensive metadata and can lead to prolonged snapshot creation and deletion processes, impacting recovery point objectives.

Innovation Solution

A snapshot mechanism that only stores metadata for changed parts of the address range, allowing for a thinly provisioned snapshot hierarchy with efficient mapping and indirection layers, enabling fast snapshot creation and deletion, and optimizing metadata usage based on user writes, with granular mapping and deduplication techniques.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of manufacture

If traditional snapshot mechanisms store metadata for the entire address range, then snapshot creation is simple and fast, but metadata space consumption becomes excessive and defeats the purpose of thin provisioning

Engineering Contradiction:
Improvesnapshot creation simplicityVSAvoidmetadata space consumption
Core Design Contradiction:
Ease of manufactureVSQuantity of substance

Solution Approach 1:

The patent divides the address space into multiple segments or ranges, and creates separate mapping tables for each segment. Only segments that contain actual data require metadata entries. This segmentation allows the system to avoid storing metadata for the entire address range, reducing metadata space consumption while maintaining snapshot functionality.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements partial metadata storage by only creating mapping table entries for address ranges that actually contain data, rather than pre-allocating metadata for the entire address space. This partial action approach reduces metadata overhead while still providing complete snapshot coverage for all actually-used addresses.

Inventive Principle:
Principle #16Partial or excessive action

2Quantity of substance

If snapshot mechanisms use fine granularity mapping, then data space efficiency improves, but metadata overhead and processing complexity increase

Engineering Contradiction:
Improvedata space efficiencyVSAvoidmetadata processing complexity
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The patent segments the address space into manageable ranges, creating mapping tables at an appropriate granularity level. This segmentation balances data space efficiency with metadata management complexity by grouping addresses into logical units that are neither too coarse nor too fine-grained.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent dynamically adjusts the granularity of mapping tables based on the actual data distribution and access patterns. By changing the parameter of mapping granularity adaptively, the system optimizes between data space efficiency and metadata processing complexity according to specific workload characteristics.

Inventive Principle:
Principle #35Parameter changes

3Speed

If snapshots store complete metadata for all address ranges, then read operations are fast and simple, but snapshot deletion becomes prolonged and impacts recovery point objectives

Engineering Contradiction:
Improveread operation speedVSAvoidsnapshot deletion time
Core Design Contradiction:
SpeedVSLoss of time

Solution Approach 1:

The patent extracts and removes metadata entries for address ranges that are no longer needed or have been released. By selectively removing only the necessary metadata entries during snapshot deletion rather than processing the entire address space, the system reduces deletion time and improves recovery point objectives while maintaining read performance.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent performs partial metadata processing during snapshot operations by only touching the metadata entries that are actually needed for the specific address ranges being modified. This partial action approach reduces the time overhead for snapshot creation and deletion while maintaining fast read performance for accessed data.

Inventive Principle:
Principle #16Partial or excessive action

4Adaptability or versatility

If the system creates snapshots frequently to improve backup flexibility, then backup coverage improves, but metadata overhead accumulates and consumes excessive space

Engineering Contradiction:
Improvebackup flexibilityVSAvoidtotal metadata overhead
Core Design Contradiction:
Adaptability or versatilityVSQuantity of substance

Solution Approach 1:

The patent merges or consolidates metadata from multiple snapshots, particularly for common address ranges that haven't changed. By combining metadata entries across snapshots and eliminating duplicates, the system enables frequent snapshot creation for backup flexibility while preventing metadata overhead from accumulating excessively.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent discards redundant metadata entries that are no longer needed or can be inferred from other snapshots, and recovers space by removing duplicate mappings. This allows the system to maintain frequent snapshots for backup flexibility while managing total metadata overhead through selective discarding of unnecessary entries.

Inventive Principle:
Principle #34Discarding and recovering

Data Source

PatentUS10445184B1Snapshot mechanism
Publication Date: 2019.10.15 EMC IP HLDG CO LLC
  • US10445184B1 patent drawing
  • US10445184B1 patent drawing
  • US10445184B1 patent drawing

AI summary

A memory management system for a thinly provisioned memory volume in which a relatively larger virtual address range of virtual address blocks is mapped to a relatively smaller physical memory comprising physical memory blocks via a mapping table containing entries only for addresses of the physical memory blocks containing data. The memory management system comprises a snapshot provision unit to take a given snapshot of the memory volume at a given time, the snapshot comprising a mapping table and memory values of the volume, the mapping table and memory values comprising entries only for addresses of the physical memory containing data. The snapshot is managed on the same thin provisioning basis as the volume itself, and the system is particularly suitable for RAM type memory disks.