Semi-distributed Lock Management for Distributed Database Clusters
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing lock management systems in distributed database applications face performance bottlenecks and scalability issues due to centralized approaches, which lead to high network overhead and complex deadlock detection, making them inefficient for large clusters.
Innovation Solution
A Semi-distributed Lock Management (SDLM) system utilizing RDMA and an acyclic time-dependent dependency graph, where lock variables are defined as CAS variables for atomic operations, and a centralized structure is directly managed by distributed entities, preventing deadlocks by ensuring the graph remains acyclic.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Device complexity
If a centralized lock management (CLM) service is used, then lock management is simplified and centralized, but performance bottlenecks occur and single point of failure risk increases
Solution Approach 1:
The patent segments the centralized lock management function into distributed lock managers at each compute node. Each node maintains its own lock state locally, eliminating the single centralized bottleneck while preserving coordinated lock management across the cluster. This segmentation resolves the contradiction by distributing complexity rather than centralizing it.
2Adaptability or versatility
If a Distributed Lock Management (DLM) approach is used, then multiple instances can access shared resources simultaneously, but heavy network overhead and complicated deadlock detection occur
Solution Approach 1:
The patent implements local quality by maintaining lock state information locally at each compute node's lock manager rather than requiring continuous remote communication. Each node independently manages its local lock state, reducing network overhead while maintaining concurrent access capability across the distributed system.
3Adaptability or versatility
If a Distributed Lock Management (DLM) approach is used, then distributed access is enabled, but longer latency occurs due to complicated coordination and deadlock detection
Solution Approach 1:
The patent applies preliminary action by pre-establishing the lock state and dependency graph structure at each compute node before lock conflicts occur. The acyclic time-dependent dependency graph is maintained in advance, allowing lock acquisition decisions to be made locally without time-consuming deadlock detection algorithms during actual lock operations.
4Reliability
If broadcast of enqueue messages among compute nodes is used, then distributed lock coordination is achieved, but heavy network overhead occurs particularly with unreliable network transmissions
Solution Approach 1:
The patent extracts the lock state management function from the network communication layer and places it locally at each compute node. Instead of broadcasting enqueue messages across the network, each node independently tracks lock state and dependencies locally, eliminating the need for continuous network communication while maintaining reliable distributed coordination.
Data Source
AI summary
Disclosed is an improved approach for performing lock management. A semi-distributed Lock Management (SDLM) system is provided utilizing RDMA and an acyclic time-dependent dependency graph that can lead to higher system performance while maintaining higher flexibility and autonomy for each process at each compute node in the given cluster, in particular for distributed database applications.


