Adaptive Storage Data Flushing Policy for Power Loss Protection
Find Innovative SolutionsGenerate 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
Engineering Contradiction Analysis
1Reliability
If data is frequently flushed to non-volatile storage, then data integrity is improved, but storage device performance deteriorates
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.
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.
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
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.
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.
3Reliability
If aggressive flushing policy is used to prevent data loss, then data integrity is improved, but energy consumption increases
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.
Data Source
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.


