Scatter-Gather Database Restore Lock Minimization
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Transactional databases face inefficiencies in data access and storage due to prolonged locking times during large data transfers, which can lead to delays and potential data corruption during restoration processes.
Innovation Solution
Implementing a scatter-gather routine to divide data into subsets, storing them in random access memory, and using transaction locks only during brief data transfer periods, along with mechanisms to prevent changes during restoration, such as invalidating configurations and marking databases as offline.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If a transaction lock is applied to the transactional database during large data transfers, then data consistency is ensured, but data access delay increases
Solution Approach 1:
The patent segments the data transfer process into multiple phases: a preparation phase without locking where data is staged in buffer memory, and a brief execution phase with locking where actual database updates occur. This segmentation allows the majority of data processing to proceed without locks, minimizing access delays while ensuring consistency only when necessary.
Solution Approach 2:
The patent performs preliminary actions by staging and validating data in buffer memory before applying transaction locks. The scatter-gather list is prepared, data is copied to buffer memory, and validation checks are performed all before the lock is acquired, so that when the lock is applied, the actual data transfer can complete quickly without prolonged blocking.
2Reliability
If the transaction lock duration is extended to ensure complete data transfer, then data consistency is maintained, but system productivity decreases
Solution Approach 1:
The patent divides the data set into multiple subsets and processes them through a staged approach: loading into buffer memory without locks, validating the scatter-gather list, then performing the actual database update with a single brief lock. This segmentation enables parallel preparation work to occur without blocking, maintaining high system throughput while ensuring consistency during the critical update moment.
Solution Approach 2:
The patent introduces buffer memory as an intermediary between the host and the transactional database. Data is first transferred to and validated in buffer memory, then a single consolidated update is applied to the database with locking. This intermediary allows most data processing to occur outside the locked transaction, improving overall system productivity.
3Adaptability or versatility
If configuration changes are allowed during database restoration, then system adaptability is maintained, but data corruption risk increases
Solution Approach 1:
The patent applies preliminary anti-action by disabling configuration changes and placing controllers in reset mode before the database restoration process begins. This preventive measure blocks any potential configuration modifications that could corrupt the restoration process, ensuring data integrity while the restoration proceeds. After restoration completes, normal configuration flexibility is restored.
Data Source
AI summary
Disclosed is a method of reading and writing data to and from a transactional database using a scatter-gather routine that minimizes the time in which the database is subject to a transaction lock. Data is placed in a scatter-gather list in RAM, which speeds the process of reading and writing data to the database. Further, a process is disclosed for restoring data in a transactional database that is accessed by more than one controller. An alternate controller is held in reset mode and placed offline, so that data in the transactional database cannot be changed during the restoration process. In addition, the database is placed offline and the host is notified that the database is invalid, so that the host cannot access the transactional database.


