SSD Write-Back Cache Flushing Algorithm

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Flushing dirty data from solid state drives (SSDs) to underlying storage media in data storage systems is not a quick process, which can lead to data loss in case of SSD failure, especially when multiple SSDs are used together, as the flushing operation can take several hours and is resource-intensive, potentially causing data loss if another SSD fails during this process.

Innovation Solution

Implementing a method that maintains SSDs in a write-back cache mode with data mirroring across multiple SSDs, allowing for normal and aggressive purge operations. Normal purge operations are paused if performance drops below a threshold, and aggressive purge operations involve sequentially mirroring data to special territories in the underlying storage medium to ensure redundancy and speed up the flushing process.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If normal flushing operations are performed on SSD cache medium, then data is transferred to underlying storage medium, but the process takes several hours and resource-intensive

Engineering Contradiction:
Improvedata safetyVSAvoidflushing time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent performs preliminary actions by detecting low-performance conditions (such as SSD failures or endurance threshold predictions) before actual data loss can occur. When such conditions are detected, the system proactively initiates aggressive purge operations to mirror data to special territories in the underlying storage medium, preventing potential data loss without waiting for actual failures to manifest

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent segments the storage system into different operational modes (normal purge operations vs. aggressive purge operations) and different storage regions (regular cache regions vs. special territories). This segmentation allows the system to switch between standard flushing procedures and emergency data protection procedures based on real-time SSD performance monitoring, enabling faster response to critical conditions while maintaining normal operations during stable periods

Inventive Principle:
Principle #1Segmentation

2Reliability

If multiple SSDs are used as cache medium with data mirroring, then redundancy is improved, but flushing operation becomes more resource-intensive and slower

Engineering Contradiction:
ImproveredundancyVSAvoidflushing speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent applies local quality by treating different regions of the storage system differently. Special territories in the underlying storage medium are designated specifically for emergency data mirroring, allowing optimized handling of critical data protection operations. This localized approach enables faster, targeted data protection without requiring full-system flushing operations, thus maintaining productivity while improving reliability

Inventive Principle:
Principle #3Local quality

3Reliability

If aggressive purge operations are performed to quickly mirror data, then data loss risk is reduced, but system resources are heavily consumed

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

Solution Approach 1:

The patent implements dynamics by making the purge operation intensity adaptive rather than static. The system dynamically switches between normal purge operations (lower resource consumption) and aggressive purge operations (higher resource consumption but faster execution) based on real-time monitoring of SSD performance metrics. This dynamic adjustment ensures that aggressive operations are only performed when absolutely necessary for data protection, minimizing overall resource consumption while maintaining adequate data protection

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS10089227B1Systems, devices and methods using a solid state device as a caching medium with a write cache flushing algorithm
Publication Date: 2018.10.02 AMZETTA TECH LLC
  • US10089227B1 patent drawing
  • US10089227B1 patent drawing
  • US10089227B1 patent drawing

AI summary

A method for performing cache flushing operations in a data storage system can include maintaining a plurality of SSDs as a cache medium for a data storage medium, controlling a region of the SSDs in a write-back cache mode, and monitoring a status of the SSDs to detect a low-performance condition. In the write-back cache mode, data is mirrored across the SSDs. The method can also include performing normal purge operations on the data stored in the region under a condition that the low-performance condition is not detected, and performing aggressive purge operations on the data stored in the region in response to detecting the low-performance condition. The normal purge operations can include flushing the data stored in the region to the data storage medium. The aggressive purge operations can include sequentially mirroring the data stored in the region to one or more special territories of the data storage medium.