Proxy Cache for Cloud Storage Latency Reduction
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Cloud storage access from outside a data center often results in high latency and increased financial costs, particularly for machine learning and analytics workloads that rely on cloud services for large data processing.
Innovation Solution
Implementing a proxy in the first data center to cache data from a second data center, redirecting I/O operations to the cache, and performing these operations locally to reduce latency and costs.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If data is stored in a remote data center cloud storage service, then storage capacity and scalability are improved, but access latency and financial costs increase when workloads are located in a different data center
Solution Approach 1:
The proxy pre-caches data from the remote data center storage service into the local data center cache before it is needed by the workload. This preliminary action reduces access latency by having data ready locally before the workload requires it, while maintaining the benefit of remote storage capacity.
Solution Approach 2:
The proxy acts as an intermediary component between the workload in the first data center and the cloud storage service in the second data center. It intercepts I/O requests, caches data locally, and serves requests from the local cache when possible, reducing latency while maintaining access to remote storage capacity.
2Quantity of substance
If data is stored in a remote data center cloud storage service, then storage capacity is improved, but financial costs increase due to data transfer fees
Solution Approach 1:
The proxy pre-caches data from the remote data center into the local cache before the workload needs it. This eliminates the need for expensive data transfer fees when the workload accesses the data, as the data is already present locally in the first data center.
Solution Approach 2:
The proxy intermediary prevents costly data egress fees by serving workload requests from the local cache rather than transferring data back and forth between data centers. It only accesses the remote storage service when necessary, minimizing expensive data transfers.
3Loss of time
If a proxy caches data locally in the first data center, then access latency is reduced, but device complexity increases
Solution Approach 1:
The proxy serves as a relatively simple intermediary component that sits between the workload and the storage system. It implements caching logic to intercept I/O requests and serve data from the local cache when possible, reducing latency without requiring complex system-wide changes.
Solution Approach 2:
The proxy creates a local copy (cache) of the data from the remote storage service. This copying mechanism simplifies the access path by having data locally available, avoiding the need for complex distributed storage coordination while still achieving low-latency access.
4Speed
If I/O operations are redirected to a local cache, then access speed is improved, but cache management complexity increases
Solution Approach 1:
The proxy implements self-service cache management by automatically intercepting I/O requests, determining whether data exists in the local cache, and serving requests appropriately. It manages the cache autonomously without requiring complex external cache management infrastructure, achieving fast local access with manageable complexity.
Data Source
AI summary
A method of handling a first input/output operation (IO) from a first virtual machine (VM), wherein the first VM is located in a first data center and the first IO is directed to a data store in a second data center, includes the steps of: connecting, by a proxy located in the first data center, to the data store; after connecting to the data store, caching, by the proxy, data of the first VM stored in the data store, wherein caching the data of the first VM comprises storing the data of the first VM in a cache located in the first data center; redirecting, by a redirection filter to the proxy, the first IO; and performing, by the proxy, the first IO on the cache in the first data center.


