Flash Cache Partial Data Segment Promotion

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In computing storage environments with multi-level caches, writing partial data segments to a secondary cache leads to wasted memory space and increased input/output activity, as these caches are often implemented with expensive flash memory, and returning to disk drives to fill 'holes' in partial tracks consumes resources and slows performance.

Innovation Solution

A data movement mechanism is configured to prioritize moving partial data segments with fewer holes or a higher 'data heat' metric to a lower speed cache level, and if they have more holes than a predetermined number, they are discarded, allowing for efficient promotion and reduction of I/O operations by writing partial tracks as whole tracks or densely packing them in the secondary cache.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If partial data segments are written to secondary cache, then data can be stored in faster memory, but memory space is wasted and I/O operations increase

Engineering Contradiction:
Improvedata access speedVSAvoidmemory space waste
Core Design Contradiction:
SpeedVSLoss of substance

Solution Approach 1:

The patent segments data into tracks and further into sectors, allowing selective promotion of only the useful data portions (sectors with data) while leaving holes in the track structure. This enables partial data segments to be written to secondary cache without requiring complete tracks to be filled, thereby reducing memory space waste while maintaining fast access speed for the promoted data.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies different quality thresholds and evaluation criteria to different sectors within the same track. By evaluating each sector's data heat metric and hole count individually, the system can selectively promote only the high-quality data segments to secondary cache while leaving lower-quality segments in primary cache, optimizing both memory utilization and access performance.

Inventive Principle:
Principle #3Local quality

2Productivity

If partial data segments are written to secondary cache, then data can be cached, but additional I/O activity is required to fill holes

Engineering Contradiction:
Improvedata caching efficiencyVSAvoidI/O operation time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent performs preliminary evaluation of data segments before promotion to secondary cache by calculating data heat metrics and counting holes in advance. This preliminary assessment allows the system to pre-determine which partial data segments are suitable for promotion, avoiding subsequent I/O operations for filling holes in already-promoted data and thus reducing overall I/O time while maintaining high caching efficiency.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent converts the harmful effect of holes in partial tracks into a beneficial filtering mechanism. Instead of viewing holes as problems that must be filled, the system uses hole counting as a criterion to identify and discard problematic partial segments, thereby converting the potential I/O burden of filling holes into a simple comparison operation that improves caching efficiency.

Inventive Principle:
Principle #22Blessing in disguise (Convert harm into benefit)

3Reliability

If partial tracks are returned to disk drives to fill holes, then data can be complete, but resources are consumed and performance slows

Engineering Contradiction:
Improvedata completenessVSAvoidsystem performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent extracts and separates the problematic partial data segments with excessive holes from the promotion process. By identifying and excluding these segments before they reach secondary cache, the system avoids the resource-consuming I/O operations that would be required to fill their holes, thereby maintaining data reliability for promoted segments while preserving system performance.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent changes the parameters used for evaluating data segments from simple presence/absence criteria to more sophisticated metrics including data heat values and hole counts. This parameter transformation enables the system to make more intelligent decisions about which segments to promote, ensuring that only segments meeting specific reliability thresholds are selected, thus maintaining data completeness without sacrificing performance.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS9417808B2Promotion of partial data segments in flash cache
Publication Date: 2016.08.16 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US9417808B2 patent drawing
  • US9417808B2 patent drawing
  • US9417808B2 patent drawing

AI summary

For efficient track destage in secondary storage in a more effective manner, for temporal bits employed with sequential bits for controlling the timing for destaging the track in a primary storage, if a first bit has at least one of a lower amount of holes and a hotter data heat metric, it is moved to the lower speed cache level. If the first bit has a hotter data heat and greater than a predetermined number of holes, the first bit is discarded.