Translation Table Snapshot Marker for Storage Reliability

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing storage systems face challenges in reconstructing translation table states after shutdowns, particularly under constrained memory conditions, and are vulnerable to data loss due to the asynchronous persistence of translation table maps.

Innovation Solution

A unified paging method is implemented, where a snapshot marker system and checkpoint mechanism are used to persist and reconstruct translation table entries efficiently, ensuring minimal input/output operations and data integrity by treating translation table entries like user data, with incremental snapshotting and periodic checkpointing to manage memory and persistence.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If a paged translation system is implemented to constrain memory consumption, then memory usage is reduced, but the system becomes vulnerable to data loss after unplanned shutdown and requires complex reconstruction mechanisms

Engineering Contradiction:
Improvememory consumptionVSAvoiddata integrity after shutdown
Core Design Contradiction:
Quantity of substanceVSReliability

Solution Approach 1:

The patent applies preliminary action by implementing a snapshot marker system that records the state of translation table entries before they are paged out to storage. This allows the system to reconstruct the translation table after shutdown by retrieving only the necessary entries marked by sequence numbers, rather than requiring full persistence or complex reconstruction mechanisms.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent segments the translation table into multiple dump groups, each with its own sequence number marker. This segmentation allows incremental persistence where only specific segments need to be reconstructed after shutdown, reducing both memory consumption and reconstruction complexity while maintaining data integrity.

Inventive Principle:
Principle #1Segmentation

2Productivity

If translation table entries are persisted asynchronously to minimize I/O operations, then I/O efficiency is improved, but data loss vulnerability increases after unplanned shutdown

Engineering Contradiction:
ImproveI/O efficiencyVSAvoiddata protection against loss
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent implements feedback through sequence number markers that track the persistence state of each dump group. The system continuously monitors and records which entries have been persisted and which remain in memory, enabling reliable reconstruction after shutdown while maintaining asynchronous I/O efficiency during normal operation.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent introduces sequence number markers as intermediaries between the translation table entries and the persistence mechanism. These markers enable the system to track and reconstruct specific entries after shutdown without requiring synchronous persistence, thus maintaining I/O efficiency while improving data protection.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If the entire translation table is persisted to storage, then data integrity is ensured, but memory consumption increases and I/O operations become excessive

Engineering Contradiction:
Improvedata integrityVSAvoidmemory consumption
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent extracts only the necessary translation table entries for persistence by using sequence number markers to identify which dump groups need to be saved. This selective extraction ensures data integrity for critical entries while minimizing memory consumption and I/O operations compared to persisting the entire translation table.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent applies partial action by persisting only specific portions of the translation table (those marked by sequence numbers) rather than the entire table. This partial persistence approach ensures data integrity for essential entries while reducing memory consumption and I/O overhead.

Inventive Principle:
Principle #16Partial or excessive action

4Stability of the object's composition

If translation table reconstruction is performed after shutdown, then data continuity is restored, but system startup time increases

Engineering Contradiction:
Improvedata continuityVSAvoidstartup time
Core Design Contradiction:
Stability of the object's compositionVSLoss of time

Solution Approach 1:

The patent applies preliminary action by pre-marking translation table entries with sequence number markers before shutdown. During startup, the system only needs to retrieve and reconstruct entries associated with the latest sequence numbers, significantly reducing reconstruction time compared to rebuilding the entire translation table while maintaining data continuity.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent segments the reconstruction process into discrete dump groups identified by sequence numbers. This allows the system to reconstruct only the necessary segments after shutdown rather than the entire translation table, reducing startup time while ensuring data continuity for all critical entries.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS10725669B2Incremental snapshot based technique on paged translation systems
Publication Date: 2020.07.28 SANDISK TECHNOLOGIES LLC
  • US10725669B2 patent drawing
  • US10725669B2 patent drawing
  • US10725669B2 patent drawing

AI summary

A data storage apparatus that includes a storage device and a processor coupled to the storage device. The processor is configured to receive in a memory, a first logical block entry for a first dump group and a second logical block entry for a second dump group; store in a reverse translation table, the first logical block entry for the first dump group and the second logical block entry for the second dump group; determine a first sequence number associated with the stored first logical block entry and the stored second logical block entry in the reverse translation table, wherein the first sequence number is a snapshot marker that determines a timestamp associated with the first logical block and the second logical block; and persist the first logical block entry for the first dump group in the storage device.