Atomic Storage Operations on Non-Volatile Solid-State Devices

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Ensuring data integrity during storage operations on non-volatile solid-state storage devices is challenging due to issues like power failures and invalid shutdowns, which can affect the integrity of data being written.

Innovation Solution

A method and apparatus for servicing atomic storage requests on non-volatile solid-state storage devices by storing data in a log-based sequential format, using persistent metadata to indicate the atomic nature of the data, and queuing requests in an ordered queue to ensure proper processing and recovery during restarts.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If data is written to non-volatile solid-state storage devices during power failures or invalid shutdowns, then storage operations can continue, but data integrity is compromised

Engineering Contradiction:
Improvestorage operation continuityVSAvoiddata integrity
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system performs preliminary actions by flushing pending writes to persistent storage before shutdown and marking atomic storage requests with persistent metadata. This ensures that even if power fails during normal operation, the storage system knows which writes were incomplete and can safely ignore them during recovery, thus maintaining data integrity while allowing continuous operation.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system implements feedback mechanisms through completion acknowledgments and persistent metadata markers that provide information about the state of storage operations. This feedback allows the system to track which atomic storage requests have been successfully completed and which are still pending, enabling reliable recovery after failures while maintaining operational continuity.

Inventive Principle:
Principle #23Feedback

2Reliability

If atomic storage requests are processed with strict integrity guarantees, then data integrity is maintained, but processing complexity increases

Engineering Contradiction:
Improvedata integrityVSAvoidstorage processing complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system segments storage operations into atomic requests that can be independently tracked and completed. Each atomic request is marked with persistent metadata, allowing the system to manage complexity by processing requests individually rather than as a monolithic operation. This segmentation maintains data integrity while reducing overall processing complexity through modular request handling.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system introduces persistent metadata as an intermediary between the storage controller and the actual data writes. This metadata acts as a mediator that tracks the state of atomic storage requests without adding significant complexity to the core storage operations. The metadata provides the necessary information for integrity guarantees while keeping the storage processing path relatively simple.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If persistent metadata is stored within each data packet, then atomic storage requests can be reliably identified, but storage space consumption increases

Engineering Contradiction:
Improveatomic request identificationVSAvoidstorage space consumption
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The system applies local quality by storing persistent metadata only at critical boundaries and key points within data packets rather than throughout the entire data structure. This selective placement of metadata provides sufficient information for atomic request identification while minimizing the additional storage space consumption. The metadata is strategically positioned where it provides maximum reliability benefit with minimum overhead.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS8725934B2Methods and appratuses for atomic storage operations
Publication Date: 2014.05.13 SANDISK TECHNOLOGIES LLC
  • US8725934B2 patent drawing
  • US8725934B2 patent drawing
  • US8725934B2 patent drawing

AI summary

A method and apparatus for storing data packets in two different logical erase blocks pursuant to an atomic storage request is disclosed. Each data packet stored in response to the atomic storage request comprises persistent metadata indicating that the data packet pertains to an atomic storage request. In addition, a method and apparatus for restart recovery is disclosed. A data packet preceding an append point is identified as satisfying a failed atomic write criteria, indicating that the data packet pertains to a failed atomic storage request. One or more data packets associated with the failed atomic storage request are identified and excluded from an index of a non-volatile storage media.