Centralized Ephemeral Victim Cache Allocation for Virtual Storage Appliances
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Cloud storage environments face challenges in managing ephemeral storage for victim caches in complex configurations with multiple virtual storage appliances, as existing methods do not efficiently allocate and reclaim ephemeral storage, leading to disk IOPS limits and increased costs.
Innovation Solution
A central service within a virtual machine manages ephemeral storage allocation and reclamation for multiple virtual storage appliances, considering factors like total ephemeral drive size, available space, and service level objectives to optimize the use of ephemeral storage as victim caches.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If victim caches use normal cloud storage resources, then caching performance is improved, but disk IOPS limits are exceeded and costs increase
Solution Approach 1:
The patent segments the storage hierarchy into multiple levels: buffer cache (in-memory, high speed), victim cache (ephemeral storage, medium speed), and persistent storage (cloud storage, low speed). This segmentation allows each level to serve its specific performance requirements without overwhelming the disk IOPS limits of the cloud storage resources.
Solution Approach 2:
The patent introduces ephemeral storage as an intermediate dimension between in-memory buffer cache and persistent cloud storage. This additional storage dimension provides a buffer that reduces the impact on disk IOPS by capturing frequently accessed data before it needs to be written to or read from the cloud storage resources.
2Speed
If buffer cache size is increased, then data access performance is improved, but memory resources are consumed and victim cache capacity is reduced
Solution Approach 1:
The patent divides the caching capacity into two separate segments: buffer cache for high-speed in-memory storage and victim cache for ephemeral storage. This segmentation allows the system to optimize for both speed (buffer cache) and capacity (victim cache) independently, resolving the trade-off between the two.
Solution Approach 2:
The patent applies different quality characteristics to different cache levels: the buffer cache prioritizes speed and accessibility for frequently accessed data, while the victim cache prioritizes capacity for less frequently accessed but still important data. Each level has optimized for its specific local quality requirements.
3Productivity
If ephemeral storage is allocated to multiple virtual storage appliances, then storage utilization is improved, but allocation management complexity increases
Solution Approach 1:
The patent implements a universal ephemeral storage pool that serves multiple virtual storage appliances within a single virtual machine. This multi-functional approach allows one storage resource to support multiple applications, improving overall utilization while the centralized management handles the complexity of allocation across different appliances.
Solution Approach 2:
The patent introduces a central service as an intermediary between the ephemeral storage pool and multiple virtual storage appliances. This mediator handles the allocation and reclamation operations, simplifying the management complexity by centralizing control logic and providing a unified interface for storage resource distribution.
4Reliability
If ephemeral storage is not reclaimed, then availability is maintained, but storage efficiency decreases and costs increase
Solution Approach 1:
The patent implements a reclamation mechanism that discards ephemeral storage space when no longer needed and recovers it for reallocation. This ensures that storage efficiency is maintained by freeing up space from terminated or inactive virtual storage appliances, while availability is preserved through proper allocation tracking and central service coordination.
Data Source
AI summary
Systems and methods are provided for sharing ephemeral storage of a virtual machine (VM) for use as victim caches for virtual storage appliances running on the VM. According to one embodiment, a central service may run within the VM and be responsible for managing allocation and reclamation of ephemeral storage space of the VM to/from the virtual storage appliances. Responsive to startup of a new virtual storage appliance on the VM, the new virtual storage appliance may request space from the central service to inform creation of its victim cache. In connection with servicing the request, the central service may take into consideration various factors including one or more of the total aggregate size of multiple local ephemeral drives associated with the VM, remaining available ephemeral storage space, the number of active virtual storage appliances, and the SLO of the virtual storage appliance seeking to establish its victim cache.


