Continuous Data Protection via Metadata Journal and Hash Reference Counting

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional snapshot technologies provide coarse granularity, allowing users to restore volumes only to specific snapshot points in time, and store a limited number of snapshots, making it impossible to restore the exact state of a volume at any point in time between snapshots.

Innovation Solution

A continuous data protection (CDP) mechanism is implemented on a storage array, which includes a metadata journal and hash reference count table, allowing for efficient native CDP by incrementing hash reference counts for each I/O operation, generating periodic snapshots, and adding metadata with timestamps, enabling restoration to any point in time.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If conventional snapshot technology is used, then storage space is conserved, but the ability to restore to any point in time is lost

Engineering Contradiction:
Improvestorage spaceVSAvoidrestore precision
Core Design Contradiction:
Quantity of substanceVSMeasurement precision

Solution Approach 1:

The patent segments the continuous data protection functionality into two parts: (1) periodic snapshots that provide coarse-grained restore points, and (2) a metadata journal that records fine-grained I/O operations between snapshots. This segmentation allows the system to achieve fine-grained restore capability without storing complete volume images at every point in time, thus conserving storage space while enabling precise restoration.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent adds a temporal dimension to the metadata journal by recording timestamps with each I/O operation. This temporal dimension allows the system to reconstruct the volume state at any point in time by filtering and applying metadata entries based on their timestamps, enabling fine-grained restoration without requiring storage space for every possible restore point.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Measurement precision

If a metadata journal is maintained for each I/O operation, then fine-grained restore capability is achieved, but system complexity increases

Engineering Contradiction:
Improverestore precisionVSAvoidsystem complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The metadata journal structure is designed to be universal and multi-functional. It serves multiple purposes: (1) enabling fine-grained restoration by recording all I/O operations with timestamps, (2) supporting snapshot creation by providing the data needed to reconstruct volume states, and (3) facilitating data deduplication through hash reference counting. This multi-functionality reduces the need for separate mechanisms, thereby managing system complexity while achieving fine-grained restore capability.

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

Solution Approach 2:

The metadata journal acts as an intermediary between the I/O operations and the snapshot/restoration processes. Instead of directly managing complex restore operations for every I/O change, the system uses the metadata journal as a mediator that records changes in a standardized format, which can then be processed efficiently during restoration. This intermediary layer simplifies the overall system architecture.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Quantity of substance

If hash reference counting is implemented, then storage efficiency is improved, but processing overhead increases

Engineering Contradiction:
Improvestorage efficiencyVSAvoidprocessing speed
Core Design Contradiction:
Quantity of substanceVSProductivity

Solution Approach 1:

The patent implements hash reference counting selectively rather than for all data operations. The mechanism is activated specifically when data is written to the volume, and the reference count is incremented only for the hash of the written data. This partial application of hash reference counting provides storage efficiency benefits for deduplication while minimizing the processing overhead associated with hash calculations and reference count management.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS10229006B1Providing continuous data protection on a storage array configured to generate snapshots
Publication Date: 2019.03.12 EMC IP HLDG CO LLC
  • US10229006B1 patent drawing
  • US10229006B1 patent drawing
  • US10229006B1 patent drawing

AI summary

In one aspect, a method includes receiving an I/O to write data to a volume stored, increasing a hash reference count for a hash of the data in response to receiving the I/O, periodically generating snapshots of the volume, adding metadata on the I/O and a timestamp to a metadata journal and increasing the reference count value in response to adding the metadata.