Lockless Metadata Page Reading via Sequential Tablet Identifiers
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional storage systems face increased IO operation latency and decreased performance due to lock contention during read miss operations, which require synchronization with destage operations, leading to inefficiencies in metadata page retrieval.
Innovation Solution
Assigning unique sequential identifiers to tablets in a cache memory system allows for lockless reading by managing metadata deltas independently, enabling read miss operations without blocking user writes and reducing synchronization needs.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If conventional lock-based synchronization is used during read miss operations, then data consistency is maintained, but IO operation latency increases and system performance decreases
Solution Approach 1:
The patent introduces a metadata log as an intermediary structure that records all metadata updates sequentially. Instead of using locks to synchronize read and write operations, the system uses this log to track the state of metadata pages. Read operations can safely read from the log to determine if they need to fetch data from storage, while write operations append to the log. This intermediary structure eliminates the need for lock contention while maintaining data consistency through the sequential recording of operations.
Solution Approach 2:
The patent implements preliminary action by pre-allocating and pre-populating the metadata log with sequential entries before they are actually needed. The log structure is prepared in advance with space for multiple operations, and metadata updates are recorded in the log before being applied to the actual metadata pages. This allows read operations to check the log ahead of time to determine if data needs to be read from storage, avoiding blocking and reducing latency.
2Productivity
If lock contention is avoided through lockless reading, then IO operation latency decreases and system performance improves, but ensuring data consistency becomes more challenging
Solution Approach 1:
The metadata log serves as a mediator that enables lockless reading while ensuring data consistency. The log records all write operations in sequential order, creating an immutable history of metadata changes. Read operations consult this log to determine the current state of metadata pages without requiring locks. The sequential nature of the log provides a natural ordering that ensures reads see consistent states, eliminating the need for lock-based synchronization while maintaining reliability.
Solution Approach 2:
The patent replaces the mechanical lock-based synchronization system with a software-based logging mechanism. Instead of using hardware or software locks that require mutual exclusion and cause blocking, the system substitutes a sequential logging approach where operations are recorded and processed in order. This substitution eliminates the mechanical contention inherent in lock-based systems while maintaining the logical consistency required for reliable data access.
3Productivity
If metadata updates are aggregated in cache memory system, then write efficiency improves, but destaging operations may block user writes in conventional approaches
Solution Approach 1:
The patent segments the metadata update process into two independent parts: aggregation in cache and destaging to storage. The metadata log in the cache memory system continues to accept and aggregate write operations independently, while destaging operations work separately to flush accumulated updates to the storage array. This segmentation allows user writes to continue being recorded in the cache without being blocked by the slower destaging operations to storage, improving both write efficiency and system responsiveness.
Solution Approach 2:
The patent ensures continuity of useful action by allowing the metadata log to continuously accept write operations in the cache memory system without interruption from destaging operations. While destaging occurs in the background to persist updates to storage, the primary write path remains open and uninterrupted in the cache. This continuous operation maintains high write efficiency while still ensuring data durability through periodic destaging, preventing write blocking that would occur if destaging had to complete before accepting new writes.
Data Source
AI summary
A method, computer program product, and computing system for assigning a plurality of unique sequential identifiers to a plurality of tablets in a cache memory system. One or more metadata deltas associated with a metadata page stored in a storage array may be written to the plurality of tablets in the cache memory system. Each metadata delta stored in at least one tablet of the plurality of tablets may be written to the metadata page stored in the storage array, thus defining one or more destage tablets. A largest unique sequential identifier from the plurality of unique sequential identifiers assigned to the one or more destage tablets, may be written to the storage array, thus defining a current tablet identifier for the metadata page.


