Cache Page Locking for Metadata Access Efficiency
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing data storage systems face inefficiencies in accessing metadata due to multiple steps of copying cache pages and serialization of I/O requests during commit operations, which can lead to performance delays and data corruption risks.
Innovation Solution
A method and device that allow an application to lock a cache page, enabling direct access and control over metadata without serializing cache operations, allowing concurrent access by multiple applications while preventing cache reallocation or writing back to storage during the lock period.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If the application requests and obtains cache pages every time it needs to update metadata, then the metadata can be accessed and updated, but the application must wait for commit operations to complete which serializes I/O requests and impacts performance
Solution Approach 1:
The patent implements dynamic control over cache page access rights. Applications transition from static waiting for commit completion to dynamic locking where they can acquire exclusive access to cache pages independently. This allows applications to perform reads and writes without serializing I/O requests, directly resolving the contradiction between ease of metadata access and I/O throughput.
Solution Approach 2:
The locking mechanism acts as an intermediary between applications and the cache storage system. Instead of applications directly waiting for commit operations to complete, the lock provides an intermediate control layer that allows them to secure exclusive access to cache pages. This mediator enables concurrent I/O operations while maintaining data consistency, resolving the throughput versus access ease contradiction.
2Reliability
If the cache maintains control over cache pages during commit operations, then data consistency is maintained, but applications cannot access metadata concurrently which causes serialization and performance delays
Solution Approach 1:
The system transitions from static cache control where the cache holds pages during commits to dynamic locking where applications can acquire exclusive access. This dynamic approach allows applications to access metadata concurrently with commit operations, eliminating wait time while the lock ensures data consistency by preventing simultaneous modifications.
Solution Approach 2:
Applications perform preliminary locking actions before accessing metadata. By acquiring the lock in advance, applications secure their access rights before commit operations complete, eliminating the need to wait for consistency checks. This preliminary action resolves both the time loss and maintains reliability.
3Reliability
If the application copies updated buffer to cache pages and mirrors to remote system during commit, then data is synchronized, but multiple copying steps are required which reduces access efficiency
Solution Approach 1:
The patent enables dynamic access to cache pages without requiring applications to wait for the complete commit process. Applications can lock and access pages independently, performing reads and writes concurrently with mirror operations. This dynamic access eliminates the sequential copying steps required in traditional commits, directly improving metadata access speed while maintaining synchronization reliability.
Solution Approach 2:
The locking mechanism enables continuous useful action by allowing applications to access and modify metadata at any time without waiting for commit completion. Multiple applications can perform useful work concurrently - reading, writing, and updating metadata - while mirror operations continue in the background. This continuity eliminates the stop-start nature of traditional commit-based access, improving both speed and productivity.
Data Source
AI summary
A method, device, and system are provided for accessing metadata in a data storage system. More specifically, a requesting application requests a cache application to allocate a cache page to retrieve metadata from a storage device. After metadata is written to the cache page, the cache page is locked by the requesting application. The cache page is maintained in a locked state by the requesting application. This allows the data stored within the cache page to be quickly accessed and updated by the requesting application without waiting for the cache page to be written back to the storage device after every update to the cache page occurs.


