Disk Cache Data Integrity During Inaccessibility

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Data integrity is compromised when cache memory becomes inaccessible during system crashes or hibernation, as existing technologies lack effective methods to handle disk writes and ensure that cached data remains consistent with the mass storage device.

Innovation Solution

Implementing various caching strategies, such as full caching, flushing and invalidating dirty data, logging writes during cache inaccessibility, and invalidating stale data upon cache accessibility, to maintain data integrity and ensure that disk writes are properly synchronized with the cache and mass storage device.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Use of energy by moving object

If cache memory is made inaccessible during system crashes or hibernation to save energy or improve performance, then power consumption is reduced or performance is improved, but data integrity is compromised and stale data may be written to the disk

Engineering Contradiction:
Improvepower consumptionVSAvoiddata integrity
Core Design Contradiction:
Use of energy by moving objectVSReliability

Solution Approach 1:

The system performs preliminary actions by flushing the cache to the disk before entering an inaccessible state (such as hibernation or system crash). This ensures that all data is written to the disk before the cache becomes inaccessible, preventing stale data from remaining in the cache. The flush operation is initiated in advance to maintain data integrity during the subsequent inaccessible period.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system introduces an intermediary mechanism (such as a flag or synchronization protocol) that coordinates between the cache memory and disk storage during transitions to inaccessible states. This intermediary ensures proper synchronization and prevents stale data from being written to the disk by mediating the interaction between cache and disk during critical transitions.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If the cache is flushed to the disk during cache inaccessibility, then data integrity is maintained, but write operations are delayed and performance is reduced

Engineering Contradiction:
Improvedata integrityVSAvoidwrite operation speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The cache flush operation is performed as a preliminary action before the cache becomes inaccessible, rather than during the inaccessible period. This timing strategy maintains data integrity by ensuring all data is written to the disk before the cache is locked, while avoiding the performance penalty of delayed writes during the inaccessible state.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system dynamically adjusts the cache flush timing based on the operational state. When the cache is accessible, the system can perform flush operations at optimal times without impacting performance. When the cache becomes inaccessible, the system transitions to a different operational mode that prioritizes data integrity over write speed, using dynamic state management to balance these competing requirements.

Inventive Principle:
Principle #15Dynamics

3Reliability

If stale data is invalidated upon cache accessibility, then data consistency is improved, but additional processing is required and system complexity increases

Engineering Contradiction:
Improvedata consistencyVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system implements a feedback mechanism that detects when the cache becomes inaccessible and triggers appropriate actions (such as flushing the cache or setting flags). This feedback loop ensures that the system responds automatically to state changes, maintaining data consistency without requiring complex manual intervention or overly complicated processing logic.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS7627713B2Method and apparatus to maintain data integrity in disk cache memory during and after periods of cache inaccessibility
Publication Date: 2009.12.01 SK HYNIX NAND PRODUCT SOLUTIONS CORP
  • US7627713B2 patent drawing
  • US7627713B2 patent drawing
  • US7627713B2 patent drawing

AI summary

A volatile or nonvolatile cache memory can cache mass storage device read data and write data. The cache memory may become inaccessible, and I/O operations may go directly to the mass storage device, bypassing the cache memory. A log of write operations may be maintained to update the cache memory when it becomes available.