Snapshot Mapping Objects for Cache-Based Storage Systems

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional snapshot copy facilities in cache-based storage systems face challenges in efficiently creating snapshot copies when a portion of the file system is cached in memory, leading to significant time delays due to the need to flush large amounts of data to persistent storage, which can hinder application access and performance.

Innovation Solution

The implementation of a delegated reference count mechanism allows sharing of cached data between the original file and its replica, enabling the creation of snapshot copies without flushing data to storage, and using a redirect link for uncached data access, with information stored in a data transaction log for later flushing.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If data is flushed to persistent storage before creating snapshot copies, then data integrity is ensured, but significant time delays occur and application performance deteriorates

Engineering Contradiction:
Improvedata integrityVSAvoidsnapshot creation time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent segments the data access paths by creating separate mapping structures: original mapping objects for current data and snapshot mapping objects for historical data. This allows the snapshot creation process to proceed independently without blocking the flushing operation, resolving the contradiction between ensuring data integrity and reducing snapshot creation time.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary actions by creating snapshot mapping objects that reference existing cached data before the flush operation completes. The snapshot copy facility is configured in advance to access data through these mapping objects, allowing snapshot creation to begin before data is permanently written to storage, thus reducing snapshot creation time while maintaining data integrity.

Inventive Principle:
Principle #10Preliminary action

2Stability of the object's composition

If large amounts of cached data are flushed to persistent storage, then data consistency is maintained, but memory utilization decreases and write latency increases

Engineering Contradiction:
Improvedata consistencyVSAvoidmemory utilization
Core Design Contradiction:
Stability of the object's compositionVSQuantity of substance

Solution Approach 1:

The patent creates snapshot mapping objects that are copies of the original mapping structure but point to the same cached data. These mapping object copies allow multiple access paths to the same data without duplicating the actual data in cache, maintaining memory utilization while ensuring data consistency through the mapping structure replication.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The patent makes the cached data serve multiple functions simultaneously: it acts as the current working data for active operations and as the source for snapshot copies. The same cached pages are shared between original and snapshot access paths through the mapping object structure, eliminating the need to flush data to storage for snapshot creation and maintaining high memory utilization.

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

3Productivity

If snapshot copies are created from cached data without flushing, then write latency is reduced and application response time improves, but data access complexity increases

Engineering Contradiction:
Improveapplication response timeVSAvoiddata access complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent introduces mapping objects as intermediary structures that manage data access for both original and snapshot operations. These mapping objects serve as mediators between the cache and the access requests, handling the complexity of data location and versioning internally while presenting a simple interface to applications, thus improving response time without exposing access complexity to users.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent extracts the access complexity from the snapshot creation process by separating the mapping object management from the data flushing operation. The snapshot copy facility is configured with its own mapping objects that independently manage snapshot data access, removing the complexity of coordinating flush operations from the snapshot creation path and enabling fast snapshot creation.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS8943282B1Managing snapshots in cache-based storage systems
Publication Date: 2015.01.27 EMC IP HLDG CO LLC
  • US8943282B1 patent drawing
  • US8943282B1 patent drawing
  • US8943282B1 patent drawing

AI summary

A method is used in managing snapshot in cache-based storage systems. A request to create a snapshot of a data object is received. A portion of the data object is cached in a global cache. The data object is associated with a mapping object. The mapping object manages access to the portion of the data object. A snapshot of the data object is created. A snapshot mapping object is associated with the snapshot of the data object. The snapshot mapping object includes a link to the mapping object. The snapshot mapping object is a version of the mapping object and shares the portion of the data object cached in the global cache.