Log Hole Segments for Point-in-Time Database Recovery
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Database administrators face challenges in recovering data to specific points-in-time without losing backup history, as existing methods require full data recovery or new backups after each shutdown, leading to longer downtimes in distributed databases.
Innovation Solution
The technique involves generating log segments with log hole information to skip unnecessary log portions during replay, allowing for seamless point-in-time recovery by identifying and skipping specific log segments, enabling recovery from any past backup while maintaining a continuous backup history.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If full data recovery is performed from the last backup, then all data can be recovered up to the last commit, but the recovery time and downtime increase significantly
Solution Approach 1:
The log is divided into multiple segments, and the recovery process selectively replays only the necessary segments after the backup point, rather than replaying the entire log. This segmentation allows the system to recover data efficiently by processing only the relevant portions of the log sequence.
Solution Approach 2:
Log hole information is recorded in advance during normal operation, marking the positions of skipped log segments. This preliminary action enables the recovery system to quickly identify which log segments need to be replayed and which can be skipped, significantly reducing recovery time while maintaining data completeness.
2Adaptability or versatility
If point-in-time recovery is performed multiple times, then recovery flexibility is improved, but backup history may be lost
Solution Approach 1:
The log hole information is extracted and stored separately in the log segment headers, allowing the backup history to be preserved while enabling selective recovery. The extracted hole information can be ignored during recovery operations, ensuring that multiple point-in-time recoveries can be performed without losing backup history.
Solution Approach 2:
Log hole information acts as an intermediary that bridges the backup history and the recovery process. It allows the system to maintain a complete backup history while enabling efficient point-in-time recovery by mediating between the need to preserve history and the need to perform selective recovery.
3Reliability
If log segments are replayed sequentially from the beginning, then data consistency is ensured, but the recovery process becomes inefficient
Solution Approach 1:
Instead of replaying the entire log sequence, the system performs partial action by replaying only the necessary log segments after the backup point. The log hole information identifies which segments can be skipped, allowing the system to achieve data consistency efficiently without processing unnecessary portions of the log.
Data Source
AI summary
A first plurality of log segments are generated in a data storage application. The log segments are sequentially positioned within a log area and at least one of the log segments contains log hole information identifying a portion of log to skip during replay of the log. Thereafter, a portion of log segments are replayed up to a specified position while skipping at least one portion of the log prior to the specified position that is identified by the at least one log hole. Related apparatus, systems, techniques and articles are also described.


