Storage Controller Snapshot Difference Bitmap Merging

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing methods for creating difference bitmaps for remote copy operations are time-consuming, especially when snapshot management information is stored on physical storage devices, and require significant time to read and process, limiting the efficiency of snapshot copying between arbitrary generations.

Innovation Solution

A storage controller acquires and stores difference information between multiple snapshots, using a memory module to create copy difference information that shows the difference between snapshots, allowing for rapid creation of transfer difference bitmaps by merging and calculating bitwise-OR operations on stored difference bitmaps, reducing the need for frequent reference to snapshot management information.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If difference bitmap is created by merging first difference bitmap and second difference bitmap using snapshot management information, then remote copy accuracy is improved, but time consumption increases significantly

Engineering Contradiction:
Improveremote copy accuracyVSAvoidtime consumption
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent applies preliminary action by pre-calculating and storing difference bitmaps between consecutive snapshots (first difference bitmap between snapshot 1 and 2, second difference bitmap between snapshot 2 and 3) before the remote copy operation is needed. When creating the transfer difference bitmap for copying snapshot 1 to snapshot 3, the system simply merges the pre-prepared difference bitmaps rather than calculating everything from scratch, significantly reducing the time required while maintaining accuracy.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If snapshot management information is stored in physical storage device, then data persistence is improved, but access speed deteriorates

Engineering Contradiction:
Improvedata persistenceVSAvoidaccess speed
Core Design Contradiction:
ReliabilityVSSpeed

Solution Approach 1:

The patent segments the snapshot management information into two parts: frequently accessed difference bitmap data is stored in high-speed memory (RAM) for rapid access during remote copy operations, while the complete snapshot management information is persisted in physical storage devices (HDD/SSD) for reliability. This segmentation allows the system to maintain data persistence while achieving fast access speeds for critical operations.

Inventive Principle:
Principle #1Segmentation

3Adaptability or versatility

If difference information for all snapshot combinations is stored, then copy flexibility is improved, but memory consumption increases

Engineering Contradiction:
Improvecopy flexibilityVSAvoidmemory consumption
Core Design Contradiction:
Adaptability or versatilityVSQuantity of substance

Solution Approach 1:

The patent applies partial action by storing only the necessary difference bitmaps in memory - specifically, the difference bitmaps between consecutive snapshots (snapshot 1-2, snapshot 2-3) are kept in memory. When a remote copy operation needs to copy snapshot 1 to snapshot 3, the system merges these partial difference bitmaps to achieve the complete difference information. This approach provides sufficient copy flexibility while avoiding the excessive memory consumption of storing all possible snapshot combination differences.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS8738874B2Storage controller and storage control method for snapshot acquisition and remote copying of a snapshot
Publication Date: 2014.05.27 HITACHI VANTARA LTD
  • US8738874B2 patent drawing
  • US8738874B2 patent drawing
  • US8738874B2 patent drawing

AI summary

Difference information between two snapshots from a first point-in-time snapshot, which has been copied, to an N.sup.th point-in-time snapshot, which constitutes the latest point-in-time snapshot, is acquired to a memory module. The memory module stores two or more pieces of difference information. The two or more pieces of difference information comprise difference information that shows the difference between a first point-in-time snapshot and any snapshot other than the first point-in-time snapshot of N snapshots. Copy difference information, which is information that shows the difference between the first point-in-time snapshot and a specified snapshot from among N snapshots, and which is used in copying the specified snapshot, is created on the basis of the two or more pieces of difference information.