Auto-Commit Memory for Data Persistence During Power Failures

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current systems face challenges in managing volatile memory data during power failures, leading to data loss and corruption due to the inability to ensure immediate commitment of data to non-volatile storage, which affects the reliability and integrity of data storage operations.

Innovation Solution

The implementation of an auto-commit memory system that processes metadata to automatically commit data from volatile memory to non-volatile storage upon trigger events such as power failures, ensuring data persistence and accessibility post-recovery.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If data is stored in volatile memory for fast access, then access speed is improved, but data reliability during power failures deteriorates

Engineering Contradiction:
Improvememory access speedVSAvoiddata persistence during power failure
Core Design Contradiction:
SpeedVSReliability

Solution Approach 1:

The system performs preliminary actions by continuously writing data from volatile memory to non-volatile storage in the background before power failure occurs. The auto-commit memory manager monitors write operations and proactively commits data to persistent storage, ensuring data is already safely stored when power is lost, thus resolving the contradiction between fast volatile access and reliable persistence.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If data is immediately committed to non-volatile storage, then data reliability is improved, but write-commit latency increases

Engineering Contradiction:
Improvedata commitment assuranceVSAvoidwrite-commit latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system maintains continuous background writing operations that constantly transfer data from volatile to non-volatile storage without interrupting normal memory operations. This continuous action ensures data is progressively committed over time rather than in discrete interrupts, maintaining reliability while minimizing latency impact on application performance.

Inventive Principle:
Principle #20Continuity of useful action

Solution Approach 2:

The auto-commit memory manager acts as an intermediary layer between the application and physical storage devices. It manages the commit process independently, allowing applications to write to volatile memory at full speed while the intermediary handles the slower commitment process to non-volatile storage in the background, thus resolving the latency contradiction.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Productivity

If volatile memory capacity is increased, then performance is improved, but cost increases

Engineering Contradiction:
Improvememory performanceVSAvoidmemory cost
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The system merges volatile and non-volatile memory into a unified auto-commit memory interface. Applications interact with a single memory space that combines the speed of volatile memory with the persistence of non-volatile storage, eliminating the need to choose between expensive large volatile memory or cheaper non-volatile storage, thus resolving the cost-performance contradiction.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS9218278B2Auto-commit memory
Publication Date: 2015.12.22 SANDISK TECHNOLOGIES LLC
  • US9218278B2 patent drawing
  • US9218278B2 patent drawing
  • US9218278B2 patent drawing

AI summary

Apparatuses, systems, methods, and computer program products are disclosed. A method includes processing metadata for data saved from a volatile memory buffer to a non-volatile storage medium. The data may be saved in response to a trigger event for a volatile memory buffer. A method includes locating saved data on a non-volatile storage medium. A method includes providing access to saved data after a trigger event based on processed metadata.