Dynamic Cache Replication for Distributed Systems

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing computing systems face inefficiencies in data retrieval due to the complexity and distance between data sources and consumers, leading to increased time and cost, particularly in distributed systems, where traditional caching strategies do not adapt dynamically to usage patterns.

Innovation Solution

A method and system for managing cache units by determining similarity in cache usage between clients, replicating cache units to provide caching services to clients with similar usage patterns, and dynamically destroying replicated cache units when usage patterns change significantly.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If traditional caching strategies are used in distributed systems, then data retrieval can be improved, but the system does not adapt dynamically to usage patterns leading to suboptimal performance

Engineering Contradiction:
Improvedata retrieval responsivenessVSAvoidadaptability to usage patterns
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The patent implements dynamic caching by continuously monitoring cache usage patterns and adjusting cache replication strategies in real-time. The system dynamically determines similarity in cache usage between clients and adjusts replication decisions based on current usage patterns, transforming the static caching approach into a dynamic one that adapts to changing demand.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system collects information about cache usage by clients and uses this feedback to determine similarity in cache usage patterns. This feedback loop enables the system to learn from actual usage behavior and adjust replication strategies accordingly, ensuring optimal cache placement based on real-world demand patterns.

Inventive Principle:
Principle #23Feedback

2Speed

If cache units are replicated to serve more clients, then data retrieval speed improves, but system complexity and resource consumption increase

Engineering Contradiction:
Improvedata retrieval speedVSAvoidcache management complexity
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The patent applies local quality by replicating cache units selectively based on client similarity patterns rather than uniformly across all clients. Each cache unit is replicated to specific locations where it provides the most benefit, optimizing the balance between performance improvement and system complexity.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The system creates copies of cache units and assigns them to serve specific client groups based on usage similarity. This copying strategy allows the system to distribute cache functionality across multiple locations, improving data retrieval speed while managing complexity through intelligent copy placement.

Inventive Principle:
Principle #26Copying

3Productivity

If more cache units are replicated, then more clients can be served simultaneously, but the cost of storage and system resources increases

Engineering Contradiction:
Improvenumber of clients servedVSAvoidstorage resources consumed
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The system changes the parameter of cache replication based on usage patterns. By analyzing cache usage information and determining similarity between clients, the system adjusts replication parameters dynamically - replicating more cache units when usage patterns indicate high demand in specific client groups, and reducing replication when demand is low, thus optimizing resource consumption.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS9262547B2System and method for dynamic caching
Publication Date: 2016.02.16 RED HAT INC
  • US9262547B2 patent drawing
  • US9262547B2 patent drawing
  • US9262547B2 patent drawing

AI summary

A system and method of managing cache units includes providing, by a first cache unit, caching services to a first plurality of clients, collecting information associated with a usage of the first cache unit by the first plurality of clients, determining a similarity in cache usage between every pair of clients selected from the first plurality of clients based on information associated with the collected information, selecting a second plurality of clients from the first plurality of clients based on information associated with the determined similarity in cache usage, replicating the first cache unit to create a second and a third cache unit, providing, by the second cache unit, caching services to the second plurality of clients, and providing, by the third cache unit, caching services to one or more third clients selected from the first plurality of clients, each of the third clients not being in the second plurality of clients.