Volume Lock Segmentation for Database Synchronization
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current data storage systems face challenges in efficiently synchronizing volume reservation and registration information across nodes during software upgrades, leading to potential data unavailability and timeouts due to the need for locking the entire database, which disrupts I/O operations and reservation/command processing.
Innovation Solution
A method is introduced to synchronize volume reservation and registration information between a source and target database by acquiring locks for each volume, updating the databases, and marking synchronization complete, allowing for concurrent processing of reservation and registration commands without locking the entire database, thus enabling efficient synchronization and minimizing downtime.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Stability of the object's composition
If the entire database is locked during synchronization, then data consistency is ensured, but I/O operations and reservation/command processing are disrupted
Solution Approach 1:
The patent divides the database into multiple volumes, each with its own lock. Instead of locking the entire database during synchronization, only specific volume locks are acquired for the volumes being synchronized. This segmentation allows other volumes to remain accessible and process I/O operations concurrently, resolving the contradiction between data consistency and operational availability.
2Manufacturing precision
If the entire database is locked during synchronization, then synchronization accuracy is ensured, but system downtime increases
Solution Approach 1:
The synchronization process is segmented into volume-level operations rather than a monolithic database lock. Each volume can be synchronized independently and concurrently, allowing the system to maintain synchronization accuracy while reducing overall synchronization time and minimizing system downtime.
Solution Approach 2:
The patent enables continuous I/O operations and command processing during synchronization by using fine-grained volume locks instead of coarse database-wide locks. Useful actions (I/O operations) continue uninterrupted in volumes not currently being synchronized, eliminating unnecessary downtime while maintaining synchronization integrity.
3Productivity
If fine-grained volume locks are used during synchronization, then I/O operation continuity is maintained, but lock management complexity increases
Solution Approach 1:
The patent implements a universal lock management mechanism that handles both synchronization operations and I/O operations through the same volume lock interface. The lock manager provides multi-functional capabilities, managing fine-grained volume locks for both data synchronization and command processing, thereby reducing overall system complexity despite the fine-grained locking approach.
Data Source
AI summary
Techniques for processing commands may include: initially synchronizing a target database of volume reservation and registration information with a source database of volume reservation and registration information; while initially synchronizing the target database with the source database, enabling volume reservation and registration command processing on both a first node managing the source database and a second node managing the target database; while initially synchronizing the target database with the source database, performing first processing to service a first command that is any of a reservation command and a registration command for a first volume; and after initially synchronizing the target database with the source database, using the target database of the second node when servicing reservation and registration commands received at both the first node and the second node.


