Targetless Snapshots via Global Sequence and Data Pool

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional snapshot mechanisms for logical volumes in storage devices incur significant overhead, making it impractical to maintain a large number of snapshots efficiently.

Innovation Solution

A system that uses a global sequence number and a replication data pointer table to manage snapshots, allowing for targetless snapshots by copying old data to a pool device and updating sequence numbers, enabling efficient reading and writing of data while reducing overhead.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If conventional snapshot mechanisms using protection bits and session bits are used, then snapshot functionality is provided, but significant overhead is incurred making it impractical to maintain a large number of snapshots

Engineering Contradiction:
Improvenumber of snapshotsVSAvoidsnapshot overhead
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The patent extracts the snapshot data from the original logical volume and stores it in a separate data pool using a copy-on-write mechanism. When a snapshot is created, the current data blocks are copied to the data pool and the snapshot pointer is updated to point to these copied blocks, rather than using protection bits on the original volume. This separation eliminates the overhead of session bits and protection bits on the logical volume, enabling maintenance of many snapshots with minimal overhead.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent implements a copying mechanism where data blocks are duplicated to a data pool when snapshots are created. The snapshot metadata stores pointers to these copied blocks rather than using conventional protection bit mechanisms. This copying approach allows multiple snapshots to be maintained independently without the overhead of session management and protection bits that would otherwise be required on each snapshot target volume.

Inventive Principle:
Principle #26Copying

2Reliability

If snapshots are maintained using session bits and target volumes, then snapshot data is preserved, but the overhead becomes unacceptable when a large number of snapshots are required

Engineering Contradiction:
Improvesnapshot data preservationVSAvoidsnapshot overhead
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent introduces a data pool as an intermediary storage structure between the logical volume and snapshots. Instead of directly maintaining snapshot data on target volumes with session bits, the system uses this intermediate data pool to store copied data blocks. The snapshot metadata simply points to locations in the data pool, eliminating the need for complex session management and protection bit mechanisms while ensuring data preservation through the copy-on-write mechanism.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Adaptability or versatility

If conventional snapshot mechanisms are used, then snapshot functionality is achieved, but scalability to maintain many snapshots is limited due to overhead

Engineering Contradiction:
Improvesnapshot scalabilityVSAvoidsnapshot overhead
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent creates a universal data pool that serves multiple snapshots simultaneously, rather than requiring separate target volumes for each snapshot. The data pool acts as a shared resource where all snapshot data is stored, and metadata for each snapshot simply references locations within this pool. This multi-functional approach allows the system to scale to many snapshots without the overhead of individual target volume management for each snapshot.

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

Data Source

PatentUS9965216B1Targetless snapshots
Publication Date: 2018.05.08 EMC IP HLDG CO LLC
  • US9965216B1 patent drawing
  • US9965216B1 patent drawing
  • US9965216B1 patent drawing

AI summary

Providing snapshots for a logical device includes maintaining a global sequence number for the logical device, providing a snapshot table having a plurality of entries, where each of the entries corresponds to a targetless snapshot and includes a sequence number associated with a particular one of the targetless snapshots, the sequence number corresponding to the global sequence number at a time each of the snapshots is created, and, if a sequence number associated with a specific portion of the logical device is less than the global sequence number, then prior to moving new data to a specific portion of the logical device, copying old data from the specific portion to a location in a pool device, setting a pointer in a replication data pointer table to point to the location in the pool device and setting the sequence number associated with the specific portion to equal the global sequence number.