Adaptive Storage Data Flushing Policy for Power Loss Protection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Frequent data flushes to non-volatile storage devices can lead to performance degradation, and sudden power loss may result in data loss or corruption, as data is not always immediately written to the storage medium.

Innovation Solution

A processing device monitors the power supply and adjusts a data flushing policy based on remaining power, discarding requests when power is abundant and increasing flush frequency when power is low, using defined thresholds and user-set preferences through a power manager and flushing manager.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If data is frequently flushed to non-volatile storage, then data integrity is improved, but storage device performance deteriorates

Engineering Contradiction:
Improvedata integrityVSAvoidstorage device performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent implements a dynamic flushing policy that adjusts data flush frequency based on real-time power availability conditions. When power is abundant, flushing occurs less frequently to protect storage performance. When power is scarce or at risk of failure, flushing frequency increases automatically to ensure data integrity. This dynamic adaptation resolves the contradiction by making the flushing behavior context-dependent rather than static.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the flushing parameter (frequency/timing) based on power conditions. Instead of using a fixed flush interval, the patent monitors power availability and adjusts the flush timing parameter dynamically. When power levels drop below thresholds or power failure is detected, the flush interval is reduced, thereby increasing data integrity without constantly maintaining high-frequency flushing that would degrade storage performance during normal operation.

Inventive Principle:
Principle #35Parameter changes

2Productivity

If data is held in buffer before writing to non-volatile storage, then storage performance is improved, but data loss risk increases upon power failure

Engineering Contradiction:
Improvestorage performanceVSAvoiddata loss risk
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent implements a feedback mechanism where the system continuously monitors power availability conditions and uses this information to control the flushing decision. When power failure is detected or power availability drops below a threshold, the system immediately flushes buffered data to non-volatile storage. This feedback loop allows the system to maintain large buffers for performance during normal operation while automatically mitigating data loss risk when power conditions deteriorate.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The system performs preliminary flushing actions when power failure conditions are detected or predicted. Before actual power loss occurs, the monitoring system triggers a flush operation to move critical data from volatile buffer to non-volatile storage. This preliminary action ensures that even though data resides in buffer during normal operation, the system proactively protects against data loss by flushing before power failure actually occurs.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If aggressive flushing policy is used to prevent data loss, then data integrity is improved, but energy consumption increases

Engineering Contradiction:
Improvedata integrityVSAvoidenergy consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The patent applies dynamic adaptation by switching between conservative and aggressive flushing policies based on power availability conditions. During periods of abundant power, the system uses a conservative flushing policy that minimizes energy consumption by flushing only when necessary. When power availability decreases or failure is detected, the system automatically transitions to an aggressive flushing policy that prioritizes data integrity. This dynamic policy selection resolves the contradiction by matching flushing intensity to actual power conditions rather than using a fixed aggressive approach.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS8321701B2Adaptive flushing of storage data
Publication Date: 2012.11.27 MICROSOFT TECHNOLOGY LICENSING LLC
  • US8321701B2 patent drawing
  • US8321701B2 patent drawing
  • US8321701B2 patent drawing

AI summary

Methods and a processing device are provided for monitoring a level of power in a power supply of a processing device and changing a data flushing policy, with respect to data to be written to a non-volatile storage device, based on a predicted amount of time until power loss. When the predicted amount of time until power loss is higher than a threshold, as defined by a flushing policy, requests from applications for data flushes of data to a non-volatile storage device may be discarded. When the predicted amount of time remaining until power loss drops below the threshold, the requests from the applications for data flushes of the data to the non-volatile storage device may be honored and the data may be flushed to the non-volatile storage device. In some embodiments, the flushing policy may define additional thresholds.