Non-Atomic Storage Checkpointing via Journal Segmentation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional checkpointing arrangements in non-atomic persistent storage environments, such as content addressable storage systems with all-flash storage arrays, require users to suspend write operations during checkpoint generation, leading to inefficiencies and performance issues.

Innovation Solution

The storage system initiates a checkpoint without interrupting user write operations by setting a checkpoint started flag, marking user data and metadata pages in the write journal as either checkpoint or non-checkpoint pages, and altering signature generation algorithms to distinguish between them, allowing continuous write operations during checkpoint generation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If conventional checkpointing arrangements are used in non-atomic persistent storage environments, then system state can be recovered from checkpoints, but user write operations must be suspended during checkpoint generation causing performance degradation

Engineering Contradiction:
Improvesystem state recoveryVSAvoidwrite operation performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments the checkpointing process into distinct phases: setting a checkpoint started flag, marking pages as checkpoint or non-checkpoint based on the flag state, and generating signatures. This segmentation allows write operations to continue while checkpoint data is being collected and marked, resolving the contradiction between reliability and productivity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary actions by setting the checkpoint started flag and marking pages before actually generating the checkpoint data. This preliminary marking allows the system to prepare for checkpointing without interrupting write operations, maintaining both reliability and performance.

Inventive Principle:
Principle #10Preliminary action

2Stability of the object's composition

If write operations are interrupted during checkpoint generation, then atomic checkpoint consistency is achieved, but system efficiency and throughput are significantly reduced

Engineering Contradiction:
Improvecheckpoint consistencyVSAvoidwrite operation interruption time
Core Design Contradiction:
Stability of the object's compositionVSLoss of time

Solution Approach 1:

The patent introduces intermediary mechanisms including a checkpoint started flag and signature generation that mediate between ongoing write operations and checkpoint consistency. These intermediaries allow the system to track which pages should be included in the checkpoint without interrupting write operations, achieving both consistency and efficiency.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent changes parameters by altering information used to generate signatures for metadata pages based on the checkpoint started flag state. This parameter change allows the system to distinguish between checkpoint and non-checkpoint pages without interrupting write operations, maintaining both consistency and productivity.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS10990297B1Checkpointing of user data and metadata in a non-atomic persistent storage environment
Publication Date: 2021.04.27 EMC IP HLDG CO LLC
  • US10990297B1 patent drawing
  • US10990297B1 patent drawing
  • US10990297B1 patent drawing

AI summary

An apparatus comprises a storage system having storage devices and an associated storage controller. In conjunction with initiation of a checkpoint, the storage controller sets a checkpoint started flag for the checkpoint, marks user data pages and metadata pages for write operations already entered in a write journal of the storage system as of the setting of the checkpoint started flag as checkpoint pages, and marks user data pages and metadata pages for new write operations entered in the write journal after the setting of the checkpoint started flag as non-checkpoint pages by altering information used to generate signatures for respective ones of the metadata pages. Metadata pages characterizing the same user data pages subject to write operations at different times thereby have different signatures depending on whether or not the checkpoint started flag was set when its corresponding write operation was entered in the write journal.