Cache Node Processing for Disk Access Efficiency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Storage controllers face performance issues due to inefficient flushing of 'dirty data' from cache to storage devices, particularly in mixed workload environments where sequential and non-sequential data are handled, leading to increased latency and reduced efficiency in disk access operations.

Innovation Solution

Implementing a cache management process that includes a flush process to coalesce sequential cache writes up to a predefined boundary, such as a stripe boundary, and using a time-to-live timer to determine when to flush cache nodes, allowing for more efficient disk access by grouping writes and extending the time for sequential data to remain in the cache, thereby improving performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If dirty data is flushed from cache to storage devices frequently, then data safety is improved, but disk access operations increase and performance deteriorates

Engineering Contradiction:
Improvedata safetyVSAvoiddisk access efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent merges multiple sequential dirty data cache nodes into a single combined cache node before flushing to storage devices. This consolidation reduces the number of separate disk access operations required, thereby improving disk access efficiency while still ensuring data safety through periodic flushing of the combined node.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent implements a time-to-live timer that preliminarily determines when cache nodes should be flushed based on age thresholds. This preliminary timing mechanism allows the system to optimize flush operations by flushing data at strategically determined intervals rather than immediately or continuously, reducing unnecessary disk accesses while maintaining data safety.

Inventive Principle:
Principle #10Preliminary action

2Ease of operation

If sequential cache writes are handled individually, then data processing simplicity is maintained, but the number of disk access operations increases and performance is reduced

Engineering Contradiction:
Improvedata processing simplicityVSAvoiddisk access efficiency
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The patent automatically merges sequential cache writes into a combined cache node based on address proximity and temporal relationships. This merging process maintains ease of operation by transparently handling the complexity of consolidation while significantly reducing the number of disk access operations required, thereby improving performance without burdening the user or system operator.

Inventive Principle:
Principle #5Merging (Combining)

3Reliability

If cache nodes are flushed immediately when created, then data loss risk is minimized, but latency increases and performance deteriorates

Engineering Contradiction:
Improvedata loss preventionVSAvoidwrite latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent uses a time-to-live timer to preliminarily assess cache node age and determine optimal flush timing. Instead of immediate flushing, the system waits until cache nodes reach a predetermined age threshold, thereby reducing write latency while still preventing data loss through timely flush operations. This preliminary timing mechanism balances reliability and performance.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements dynamic flush timing based on cache node age and system conditions. The time-to-live timer allows the system to adaptively determine when to flush data, extending the retention period for sequential writes to reduce latency while maintaining reliability through age-based flush triggers. This dynamic approach optimizes the balance between data safety and performance.

Inventive Principle:
Principle #15Dynamics

4Productivity

If spindle seeking distance is reduced by optimizing write patterns, then disk access efficiency is improved, but the complexity of cache management increases

Engineering Contradiction:
Improvedisk access efficiencyVSAvoidcache management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent merges sequential cache nodes that are physically close on storage devices into a single combined node. This merging strategy optimizes spindle seeking distance by consolidating nearby writes, thereby improving disk access efficiency. The system manages this complexity automatically through address-based identification and temporal merging logic, minimizing the burden on cache management while achieving optimal seek patterns.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS9317436B2Cache node processing
Publication Date: 2016.04.19 HEWLETT PACKARD ENTERPRISE DEV LP
  • US9317436B2 patent drawing
  • US9317436B2 patent drawing
  • US9317436B2 patent drawing

AI summary

A technique for cache node processing that includes generating a cache node in response to a request to write data to storage devices. If logical block address (LBA) of the generated cache node is adjacent to LBA of cache nodes of a cache node list, then check if there are cache nodes that are sequential up to a predefined boundary. If there are cache nodes that are sequential up to the predefined boundary, then flush the data of the sequential cache nodes together as a group up to the predefined boundary.