Flash Cache Partial Data Segment Promotion
Find Innovative SolutionsGenerate 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
Engineering 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
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.
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.
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
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.
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.
3Reliability
If partial tracks are returned to disk drives to fill holes, then data can be complete, but resources are consumed and performance slows
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.
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.
Data Source
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.


