Cache Segmentation Above Mapping Layer for Storage Latency
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Legacy storage systems face inefficiencies due to the cache being located under the mapping layer, leading to a longer I/O path and increased latency, as well as difficulties in effectively managing user data and metadata separately, which hampers cache performance and prefetching capabilities.
Innovation Solution
The cache is positioned above the mapping layer, allowing for direct data access without the need for two-stage processing, enabling shorter data access paths, improved response times, and effective management of user data and metadata through separate caching mechanisms.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Device complexity
If the cache is located under the mapping layer, then the mapping layer can manage both user data and metadata, but the I/O path becomes longer and latency increases
Solution Approach 1:
The patent segments the cache into two separate caches: a first cache for storing user data and a second cache for storing metadata. This segmentation allows each cache to be optimized for its specific data type and accessed independently, eliminating the need for sequential access through the mapping layer and thereby reducing I/O latency.
Solution Approach 2:
The patent repositions the caches from a hierarchical structure (under the mapping layer) to a parallel structure (above the mapping layer), allowing both user data and metadata to be accessed simultaneously through separate I/O paths. This dimensional change in the cache architecture eliminates the sequential access bottleneck.
2Productivity
If the cache is located under the mapping layer, then data can be cached, but the mapping layer alters I/O mode making it difficult to prefetch user data effectively
Solution Approach 1:
By separating user data and metadata into different caches, the system allows independent prefetching operations for user data without being constrained by mapping layer operations. The first cache can be optimized for prefetching user data patterns while the second cache handles metadata operations separately.
3Quantity of substance
If user data and metadata are stored in the cache in a mixed way, then cache space is utilized, but it is difficult to apply respective management algorithms for these characteristics, reducing cache efficiency
Solution Approach 1:
The patent divides the cache into a first cache for user data and a second cache for metadata, allowing each cache to implement management algorithms optimized for its specific data type. This segmentation enables better cache space utilization through targeted replacement policies and improves overall cache management efficiency.
Solution Approach 2:
Each cache is designed with local quality optimized for its specific data type: the first cache uses management algorithms suited for user data characteristics while the second cache uses algorithms optimized for metadata characteristics, thereby maximizing the efficiency of each cache region.
Data Source
AI summary
In response to receiving a read request for target data, an external address of the target data is obtained from the read request, which is an address unmapped to a storage system; hit information of the target data in cache of the storage system is determined based on the external address; and based on the hit information, an address from the external address and an internal address for providing the target data is determined. The internal address is determined based on the external address and a mapping relationship. Therefore, it can shorten the data access path, accelerate the responding speed for the data access request, and allow the cache to prefetch the data more efficiently.


