Asynchronous Snapshot Activation via Cache Slots

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing data storage systems face challenges in efficiently managing snapshot activation across multiple logical devices, leading to prolonged write pauses and scalability issues due to sequential activation processes.

Innovation Solution

A method involving asynchronous snapshot activation processing, where a cache slot is used to store information about snapshots, allowing for concurrent activation of multiple snapshots without write restrictions on source logical devices, and incremental sequence number management for tracking snapshot versions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If sequential snapshot activation processing is used, then system simplicity is maintained, but activation time and write pause duration increase

Engineering Contradiction:
Improvesystem simplicityVSAvoidactivation time
Core Design Contradiction:
Device complexityVSLoss of time

Solution Approach 1:

The patent segments the snapshot activation process by introducing cache slots that can independently track and activate individual snapshots. Each cache slot maintains separate state information (pending activate indicator, activate indicator) allowing parallel processing of multiple snapshots without requiring sequential execution, thus reducing total activation time while maintaining manageable system complexity through modular cache slot design.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements dynamic state management through multiple indicators (pending activate indicator, activate indicator) that allow the system to transition between different activation states. This dynamic approach enables the system to efficiently manage the transition from snapshot creation to activation without requiring prolonged write pauses, as the system can dynamically adjust processing based on the current state of each cache slot.

Inventive Principle:
Principle #15Dynamics

2Productivity

If concurrent snapshot activation is implemented, then activation speed improves, but system complexity and coordination overhead increase

Engineering Contradiction:
Improveactivation speedVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent creates a universal cache slot structure that can handle multiple snapshots concurrently through standardized fields (snapshot identifier, logical device identifier, sequence number, pending activate indicator, activate indicator). This universal design allows the same cache slot mechanism to manage any number of snapshots simultaneously without requiring separate processing logic for each snapshot, thereby improving activation speed while controlling system complexity through reuse of the same structural template.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The patent introduces cache slots as intermediary structures that mediate between snapshot creation and activation operations. These cache slots serve as a buffer layer that decouples the complexity of concurrent activation coordination from the core processing logic, allowing multiple snapshots to be activated simultaneously while the cache slot management system handles the coordination overhead in a standardized manner.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If write restrictions are imposed during snapshot activation, then data consistency is ensured, but I/O performance and system throughput decrease

Engineering Contradiction:
Improvedata consistencyVSAvoidI/O performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent implements preliminary action by setting the pending activate indicator during snapshot creation, before actual activation occurs. This allows the system to prepare snapshot metadata and state information in advance, so that when activation is triggered, the process can proceed more quickly with minimal impact on ongoing I/O operations. The sequence number mechanism also captures the state at a specific point in time, ensuring consistency without requiring prolonged write restrictions.

Inventive Principle:
Principle #10Preliminary action

4Reliability

If sequential processing is used for snapshot creation and activation, then resource contention is minimized, but processing throughput decreases

Engineering Contradiction:
Improveresource management stabilityVSAvoidprocessing throughput
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments the processing workflow by introducing independent cache slots for each snapshot operation. Each cache slot can be created, activated, and managed independently from others, allowing multiple snapshots to be processed in parallel without causing resource contention. The segmentation of state management into discrete indicators within each cache slot enables concurrent processing while maintaining stable resource management through isolated state tracking.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS10853389B2Efficient snapshot activation
Publication Date: 2020.12.01 EMC IP HLDG CO LLC
  • US10853389B2 patent drawing
  • US10853389B2 patent drawing
  • US10853389B2 patent drawing

AI summary

Techniques for providing snapshots of logical devices may include: receiving a first request to create a first snapshot of a logical device; responsive to the first request, performing first processing including storing first information in a cache slot, the first information identifying the first snapshot and the logical device used as a source of the first snapshot; receiving a second request to activate one or more snapshots, including the first snapshot, identified by information stored in the cache slot; and responsive to receiving the second request, performing second processing including initiating execution of an asynchronous process that performs snapshot activation processing for the one or more snapshots identified by the cache slot.