Enclosure Cache Management for Server Data Redundancy
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Modern computing systems face inefficiencies in managing direct attached cache and remote shared cache, as over-provisioning with non-volatile memory for all workloads and hotspot sizes is economically unfeasible due to high costs, and existing methods do not effectively optimize data storage across multiple servers.
Innovation Solution
The system determines if data has been requested by a predetermined number of enclosure attached servers and marks it as 'enclosure level cacheable,' prioritizing its storage in a shared enclosure cache rather than local server caches, thereby optimizing cache usage and reducing redundancy.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If non-volatile memory is used for direct attached cache, then cache capacity can be increased and cost reduced, but cache performance and accessibility for multiple servers deteriorates
Solution Approach 1:
The cache system is segmented into two distinct parts: direct-attached cache (DAC) locally connected to each server for high-speed access, and remote shared cache (RSC) accessible by multiple servers. This segmentation allows each cache type to serve its specific function - DAC for speed-critical operations and RSC for capacity-critical operations, resolving the contradiction between capacity and speed.
Solution Approach 2:
An enclosure controller acts as an intermediary between servers and the remote shared cache, managing cache operations and data transfer. This intermediary enables multiple servers to access the shared cache efficiently without directly competing for resources, maintaining system performance while enabling shared access to non-volatile memory.
2Productivity
If direct attached cache is over-provisioned to cover all workloads, then cache performance is improved, but system cost increases
Solution Approach 1:
The remote shared cache serves multiple functions: it acts as an extension of direct-attached cache for frequently accessed data, provides storage for less frequently accessed data, and enables cost-effective capacity expansion. This multi-functionality allows the system to achieve high performance for hot data while using cheaper non-volatile memory for cold data, reducing overall system cost.
Solution Approach 2:
The system dynamically changes cache allocation parameters based on workload characteristics, data access patterns, and performance requirements. By adjusting which data resides in DAC versus RSC based on these parameters, the system optimizes performance for different workload scenarios without requiring over-provisioning of expensive memory.
3Speed
If data is stored in local server caches, then access speed is improved, but cache redundancy and storage efficiency worsen
Solution Approach 1:
Multiple servers share a common remote cache resource, merging their individual cache needs into a single pooled resource. This combining eliminates redundancy by storing copies of the same data in one location rather than duplicating across multiple local caches, while the enclosure controller ensures fast access by keeping frequently accessed data readily available.
Data Source
AI summary
Managing direct attached cache and remote shared cache, including: receiving from an enclosure attached server, by an enclosure that includes enclosure cache, a request for data; determining, by the enclosure, whether the data has been requested by a predetermined number of enclosure attached servers; and responsive to determining that the data has been requested by a predetermined number of enclosure attached servers, marking, by the enclosure, the data as enclosure level cacheable.


