Distributed Lock State Management via Local Caches
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In distributed storage systems, managing lock state information efficiently is challenging due to the large volume and constant changes, with existing techniques either distributing it directly to clients or storing it centrally, leading to bottlenecks and inefficiencies.
Innovation Solution
A distributed storage system architecture with a meta-data volume (MDV) as the authoritative source for lock state information, using a lock manager to manage lock states across multiple nodes, and employing novel lock state command messages and permissive areas to propagate implicit lock information, ensuring rapid updates without requiring specialized software.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If lock state information is distributed directly to clients, then clients can access lock information, but the system becomes complex and requires specialized software
Solution Approach 1:
The patent introduces DV nodes as intermediaries between clients and the centralized lock state information. DV nodes cache lock state information locally and provide it to clients, eliminating the need for clients to directly access the centralized storage and removing the requirement for specialized client software.
Solution Approach 2:
The patent segments the lock state information management by introducing multiple DV nodes that each maintain local caches. This distributes the information access burden across multiple intermediate nodes rather than requiring direct client access to centralized information, reducing system complexity.
2Stability of the object's composition
If lock state information is stored centrally, then information consistency is maintained, but access bottlenecks occur
Solution Approach 1:
The patent segments lock state information access by introducing multiple DV nodes with local caches. Each DV node can independently serve lock state information to clients, parallelizing access operations and eliminating the single-point bottleneck while maintaining consistency through periodic synchronization with the centralized MDV node.
Solution Approach 2:
The patent implements preliminary action by having DV nodes proactively cache lock state information from the centralized MDV node before it is needed by clients. This pre-positioning of information at distributed cache nodes enables rapid client access without requiring real-time centralized retrieval, thus improving productivity while maintaining consistency.
3Reliability
If lock state information is frequently updated, then accurate access control is maintained, but system performance degrades
Solution Approach 1:
The patent applies preliminary action by having DV nodes cache lock state information in advance and update their local caches asynchronously rather than requiring synchronous updates for every client access. This allows frequent lock state changes to be propagated to clients through pre-positioned cache updates, maintaining reliability while reducing the performance impact of frequent updates.
Solution Approach 2:
The patent implements partial action by updating only the specific portions of lock state information that have changed in the DV node caches, rather than performing complete synchronization operations. This selective updating maintains accurate access control for modified portions while minimizing the performance overhead associated with frequent updates.
Data Source
AI summary
A system and method manages lock state information in a distributed file system. A meta-data volume includes a lock state database which is a comprehensive source for lock state information about a striped volume set in the system. A plurality of data volumes includes local lock caches which contain information about locks. Lock state messaging between the meta-data volume and the data volumes is used to assign locks and to update local lock caches. The meta-data volume is configured to assigned permissive areas in the data containers accessed by clients in order to efficiently manage the lock state information.


