Host-Side Caching with Application Consistent Write-Back
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing data storage management systems are inefficient for write-intensive workloads as they require write-through methods, leading to unnecessary data invalidation and bandwidth waste, and struggle to differentiate between valid and invalid cached data, thus hindering performance.
Innovation Solution
Implementing a file-based host-side caching method with application consistent write-back, where the storage management device acknowledges write operations, transfers only consistent data to storage servers, and takes snapshots after each transfer, using a cache mechanism that does not hinder client performance during write-intensive workloads.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If write-through method is used, then data consistency is maintained, but write performance deteriorates and caching benefit is lost
Solution Approach 1:
The patent segments the cache validity tracking into two independent mechanisms: per-file valid/invalid flags and per-block version numbers. This allows the system to maintain data consistency for entire files while enabling selective updates, resolving the contradiction between maintaining consistency and improving write performance.
Solution Approach 2:
The patent performs preliminary actions by pre-establishing file-level valid/invalid flags and block-level version numbers before write operations occur. This allows the system to quickly determine what needs to be updated without performing full write-through validation, thereby improving write performance while maintaining consistency.
2Reliability
If cache invalidation is performed, then data consistency is maintained, but network bandwidth is wasted and valid data is unnecessarily transferred
Solution Approach 1:
The patent applies local quality by differentiating between file-level validity (valid/invalid flags) and block-level versioning. This allows the system to invalidate only specific blocks within a file rather than the entire file, reducing unnecessary data transfers and network bandwidth consumption while maintaining consistency where needed.
Solution Approach 2:
The patent replaces the mechanical approach of invalidating entire files or blocks with a more precise versioning mechanism. By using version numbers at the block level and selective invalidation based on version comparisons, the system avoids unnecessary data transfers and reduces network bandwidth waste while maintaining data consistency.
3Productivity
If large cache is implemented, then read performance is improved, but difficulty to determine invalid data increases and data transfer efficiency decreases
Solution Approach 1:
The patent segments cache validity management into file-level flags and block-level version numbers, making it scalable for large caches. This segmentation allows the system to efficiently track validity across large datasets without increasing complexity, as each segment can be independently managed.
Solution Approach 2:
The patent uses copying by creating version numbers that replicate the state of data blocks at different times. This allows the system to compare versions to determine validity without manually tracking changes, simplifying the management of large caches while maintaining efficient validity determination.
Data Source
AI summary
A method, non-transitory computer readable medium, and device that assists with file-based host-side caching and application consistent write back includes receiving a write operation on a file from a client computing device. When the file for which the write operation has been received is determined when the file is present in the cache. An acknowledgement is sent back to the client computing device indicating the acceptance of the write operation when the file for which the write operation has been received is determined to be present within the cache. The write-back operation is completed for data present in the cache of the storage management computing device to one of the plurality of servers upon sending the acknowledgement.


