Shadow Page Grouping for Lock-Free Savepoints
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current data storage systems using shadow paging techniques face inefficiencies due to the need for a complete system lock during synchronization, which reduces concurrency and increases runtime processing, especially when converting shadow pages to free status.
Innovation Solution
Implementing a method where shadow pages are assigned to alternating savepoint groups, allowing only a subset to be processed at each savepoint, thereby avoiding a complete system lock and enabling concurrent creation and modification of shadow pages.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If shadow pages are converted to free status during savepoint synchronization, then data persistence is ensured, but a complete system lock is required which reduces concurrency and increases runtime processing
Solution Approach 1:
The patent divides shadow pages into multiple groups (first group, second group, etc.) and processes them in separate savepoint operations. This segmentation allows concurrent creation and modification of shadow pages without requiring a complete system lock, thereby maintaining data persistence while improving concurrency and reducing runtime processing overhead.
2Reliability
If shadow pages are converted to free status during savepoint synchronization, then data persistence is ensured, but runtime processing time increases
Solution Approach 1:
By segmenting shadow pages into multiple groups and processing them in separate savepoint operations, the patent reduces the time required for synchronization. This allows overlapping of operations where shadow pages in different groups can be processed concurrently, reducing total runtime processing time while ensuring data persistence.
Solution Approach 2:
The patent performs preliminary assignment of shadow pages to groups before processing, allowing the system to prepare and organize pages in advance. This preliminary organization enables more efficient processing during savepoint synchronization, reducing runtime processing time while maintaining data persistence.
3Reliability
If shadow pages are converted to free status during savepoint synchronization, then data persistence is ensured, but system locking requirements increase
Solution Approach 1:
The patent segments shadow pages into multiple groups and applies selective locking only to the current group being processed, rather than locking the entire system. This reduces system locking complexity while ensuring data persistence for all shadow pages.
Solution Approach 2:
Instead of requiring a complete system lock for all shadow pages, the patent applies partial locking only to the specific group being processed at each savepoint. This partial action approach reduces locking requirements and system complexity while maintaining data persistence through sequential processing of all groups.
Data Source
AI summary
Storage pages in a data storage application can be designated as having one of a used status, a free status, and a shadow status. The storage pages having the shadow status remain in use but available for conversion to the free status after completion of a savepoint. The storage pages designated to the shadow status can be assigned among at least a first group and a second group. A first savepoint can be invoked during which the storage pages designated to the shadow status and assigned to the first group are converted to the free status, and a second savepoint can be invoked during which the storage pages designated to the shadow status and assigned to the second group are converted to the free status. In this manner, locking of the system during a savepoint is not required. Related methods, systems, and articles of manufacture are also disclosed.


