Cache Page Weighting for Data Destaging Optimization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current data storage systems face inefficiencies in destaging data from cache to physical storage, particularly in prioritizing which data to write out and when, leading to suboptimal performance and potential cache overflow.

Innovation Solution

A method that assigns weight values to cache pages based on factors such as time since last write, missing data portions, and gap sequentiality, then sorts these pages to prioritize destaging, ensuring optimal destaging performance and managing cache consumption by determining aggressiveness levels based on cache usage thresholds.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If data is stored in cache pages for write operations, then write performance is improved, but cache overflow occurs and destaging efficiency deteriorates

Engineering Contradiction:
Improvewrite performanceVSAvoidcache overflow risk
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system proactively identifies and prioritizes cache pages for destaging before cache overflow occurs by calculating weight values based on multiple factors including time since last write, missing data portions, and gap sequentiality. This preliminary prioritization ensures that critical data is destaged first, preventing cache overflow while maintaining write performance.

Inventive Principle:
Principle #10Preliminary action

2Device complexity

If cache pages are destaged in arbitrary order, then destaging process is simple, but destaging performance is suboptimal

Engineering Contradiction:
Improvedestaging process complexityVSAvoiddestaging performance
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The system dynamically adjusts the destaging priority of cache pages by continuously calculating weight values based on current cache state and multiple factors. This dynamic prioritization allows the system to adapt to changing conditions and optimize destaging performance without requiring complex manual configuration or static scheduling algorithms.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the parameter of cache page selection from arbitrary ordering to weight-based prioritization. By introducing weight values that reflect multiple characteristics of cache pages (time since write, missing portions, gap sequentiality), the system transforms the destaging process into an optimized sequence that improves performance while maintaining reasonable complexity.

Inventive Principle:
Principle #35Parameter changes

3Ease of operation

If all cache pages are treated equally for destaging, then processing is uniform and simple, but critical data may be lost and performance suffers

Engineering Contradiction:
Improvedestaging uniformityVSAvoiddata loss risk
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The system applies different quality levels to different cache pages by assigning unique weight values based on their specific characteristics. Each cache page is evaluated individually based on factors such as time since last write, missing data portions, and gap sequentiality, ensuring that pages with higher priority (lower data loss risk) are destaged first while maintaining uniform processing rules.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS9767021B1Optimizing destaging of data to physical storage devices
Publication Date: 2017.09.19 EMC IP HLDG CO LLC
  • US9767021B1 patent drawing
  • US9767021B1 patent drawing
  • US9767021B1 patent drawing

AI summary

Described are techniques for destaging data. Write data for write operations are stored in cache page(s). The cache may be partitioned into cache pages and write data stored thereon may be marked as write pending denoting that write data needs to be written out to physical storage. Weight values may be determined for the cache pages in accordance with factors. A first cache page may be selected having a highest such weight value where the selected first cache page includes at least some write data marked as write pending. The write data of the selected first cache page may be destaged to physical storage.