Cache Memory Coordination via Aggregated Hit Miss Data

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In storage area network (SAN) environments, local cache memories in application servers operate independently without coordination, leading to suboptimal caching decisions due to lack of consolidated workload information from other servers, resulting in inefficient cache management and performance.

Innovation Solution

A method where a shared data storage system aggregates cache hit and miss data from multiple local servers, providing aggregated data to update cache memories, allowing for coordinated caching decisions based on global knowledge of cache hits and misses, and implementing asynchronous cache updates to avoid impacting application requests.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If local cache memories in application servers operate independently without coordination, then device complexity is reduced and ease of operation is improved, but cache performance and productivity deteriorate due to lack of consolidated workload information

Engineering Contradiction:
Improveease of cache managementVSAvoidcache performance
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The system implements feedback mechanisms where local servers report cache hit/miss data to the shared data storage system, which then provides aggregated cache data information back to local servers for updating their cache memories. This closed-loop feedback enables coordinated cache management that improves performance while maintaining operational simplicity.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The shared data storage system serves multiple functions: it stores data, aggregates cache data information from multiple local servers, and distributes this aggregated information back to local servers. This multi-functionality consolidates what would otherwise require separate systems into a single coordinated platform.

Inventive Principle:
Principle #6Universality (Multi-functionality)

2Productivity

If local servers report cache data information to shared data storage system for aggregation, then cache performance improves through coordinated caching decisions, but device complexity and communication overhead increase

Engineering Contradiction:
Improvecache performanceVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

Local servers autonomously report their cache hit/miss data to the shared data storage system without requiring complex coordination protocols. The system self-manages the aggregation and distribution of cache data information, reducing the complexity burden on individual servers while maintaining improved performance.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The shared data storage system acts as an intermediary between local servers, consolidating cache data information from multiple sources and distributing it back to local servers. This intermediary role simplifies the overall system architecture by centralizing the complex aggregation function rather than requiring direct peer-to-peer coordination.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Stability of the object's composition

If cache updates are performed synchronously during critical data paths, then cache consistency is improved, but system throughput and productivity deteriorate due to blocking of application requests

Engineering Contradiction:
Improvecache consistencyVSAvoidsystem throughput
Core Design Contradiction:
Stability of the object's compositionVSProductivity

Solution Approach 1:

The system performs cache updates in advance during non-critical periods by aggregating cache data information from local servers and distributing it before it is needed for active data paths. This preliminary action allows cache consistency to be maintained without blocking ongoing application requests, thereby preserving system throughput.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

Instead of continuous synchronous updates, the system employs periodic aggregation and distribution of cache data information. Local servers report cache data at appropriate intervals, and the shared data storage system aggregates and distributes this information periodically, maintaining cache consistency while allowing application requests to proceed uninterrupted during critical periods.

Inventive Principle:
Principle #19Periodic action

Data Source

PatentUS9152599B2Managing cache memories
Publication Date: 2015.10.06 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US9152599B2 patent drawing
  • US9152599B2 patent drawing
  • US9152599B2 patent drawing

AI summary

A method for managing cache memories includes providing a computerized system including a shared data storage system (CS) configured to interact with several local servers that serve applications using respective cache memories, and access data stored in the shared data storage system; providing cache data information from each of the local servers to the shared data storage system, the cache data information comprising cache hit data representative of cache hits of each of the local servers, and cache miss data representative of cache misses of each of the local servers; aggregating, at the shared data storage system, at least part of the cache hit and miss data received and providing the aggregated cache data information to one or more of the local servers; and at the local servers, updating respective one or more cache memories used to serve respective one or more applications based on the aggregated cache data information.