Snapshot Creation Optimization for Storage Logical Devices

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing data backup systems face inefficiencies in managing snapshots for logical devices in storage systems, leading to unnecessary overhead from snapshots with no data changes, while ensuring data consistency across incremental backups.

Innovation Solution

A mechanism that marks initial and additional logical devices for snapshots based on modifications, suspends I/O operations, performs snapshots, and resumes operations, using pointers in a table to manage snapshot data sets, allowing deletion of oldest snapshots and associating multiple snapshots with the same data where devices remain unchanged.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If snapshots are created for all logical devices at each time increment, then data consistency across backup sets is maintained, but storage overhead and processing time increase significantly due to snapshots containing no data

Engineering Contradiction:
Improvedata consistencyVSAvoidstorage overhead
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent segments the set of logical devices into two groups: those that require snapshots (modified devices) and those that do not (unmodified devices). This segmentation allows the system to create snapshots only for devices that have changed, eliminating unnecessary snapshots for unchanged devices while maintaining data consistency for the segmented subset that requires it.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies local quality by treating each logical device individually based on its modification status. Instead of applying a uniform snapshot policy to all devices, the system assigns different snapshot requirements to different devices - modified devices receive snapshots while unmodified devices do not, optimizing storage usage while maintaining consistency where needed.

Inventive Principle:
Principle #3Local quality

2Measurement precision

If the time increment between snapshots is reduced to provide sufficient granularity, then recovery precision is improved, but the number of snapshots with no data increases

Engineering Contradiction:
Improverecovery granularityVSAvoidprocessing overhead
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent applies partial action by creating snapshots only for the subset of devices that have been modified, rather than creating snapshots for all devices at every time increment. This reduces the processing overhead and number of unnecessary snapshots while maintaining the ability to recover with fine granularity for devices that actually changed.

Inventive Principle:
Principle #16Partial or excessive action

3Quantity of substance

If snapshots are eliminated for devices with no data changes, then storage efficiency is improved, but data consistency across incremental data sets may be compromised

Engineering Contradiction:
Improvestorage efficiencyVSAvoiddata consistency
Core Design Contradiction:
Quantity of substanceVSReliability

Solution Approach 1:

The patent uses preliminary action by tracking device modifications between snapshot intervals and identifying which devices require snapshots before the snapshot operation occurs. This preliminary identification ensures that snapshots are created only when necessary for consistency, eliminating unnecessary snapshots while preserving data consistency for devices that actually changed.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11354268B2Optimizing snapshot creation
Publication Date: 2022.06.07 EMC IP HLDG CO LLC
  • US11354268B2 patent drawing
  • US11354268B2 patent drawing
  • US11354268B2 patent drawing

AI summary

Creating snapshot data sets for a plurality of logical devices of a storage system includes marking an initial set of the logical devices for a snapshot in response to each of the initial set of logical devices having been modified since obtaining a previous snapshot data set, suspending I/O operations, marking an additional set of the logical devices for a snapshot in response to each of the additional set of logical devices having been modified prior to suspending I/O, performing a snapshot of the logical devices in the initial set of logical devices and in the additional set of logical devices, and resuming I/O operations. Pointers to snapshots for the snapshot data set may be placed in a table that includes a plurality of entries for a plurality of snapshot data sets. None of the additional set of logical devices may be part of the initial set of logical devices.