Database Reversion Using Selective Page Image Backup

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Storage processing systems face resource-intensive challenges in maintaining lag copies for data recovery, as they require additional storage space and disk input/output operations, which can be inefficient and costly.

Innovation Solution

A system comprising a database engine hosting an active and passive database, with a log engine generating transaction logs and a backup engine creating separate backup data structures for database reversion, allowing the passive database to be reverted to a requested time using identified backup data structures, thereby reducing redundant storage and improving performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a lag copy of the database is maintained for data recovery, then data recovery capability is improved, but storage space and disk input/output operations increase

Engineering Contradiction:
Improvedata recovery capabilityVSAvoidstorage space
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent extracts only the necessary backup information (page images that need to be reverted) from the complete database lag copy approach. Instead of maintaining a full lag copy, the system stores only the minimal required backup data structures containing page images at specific points in time, thereby reducing storage space while preserving data recovery capability.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent applies partial action by storing only the necessary portion of backup data (specific page images that need to be reverted) rather than the entire database lag copy. The backup data structure contains only the pages that require reversion, avoiding the excessive storage requirement of a complete lag copy while maintaining adequate data recovery functionality.

Inventive Principle:
Principle #16Partial or excessive action

2Reliability

If a lag copy of the database is maintained for data recovery, then data recovery capability is improved, but disk input/output operations increase

Engineering Contradiction:
Improvedata recovery capabilityVSAvoiddisk input/output operations
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent extracts and stores only the essential backup information (page images) in a compact backup data structure, eliminating the need to perform extensive disk I/O operations that would be required to maintain and restore a complete lag copy. This selective extraction reduces disk input/output overhead while preserving data recovery capability.

Inventive Principle:
Principle #2Taking out (Extraction)

3Manufacturing precision

If backup data structures are created for every page update, then data recovery precision is improved, but storage space and processing overhead increase

Engineering Contradiction:
Improvedata recovery precisionVSAvoidstorage space
Core Design Contradiction:
Manufacturing precisionVSQuantity of substance

Solution Approach 1:

The patent extracts and stores only the specific page images that need to be reverted in the backup data structure, rather than creating backups for every page update. The system selectively captures and stores backup data at appropriate points in time, achieving sufficient data recovery precision without the excessive storage overhead of comprehensive page-level backup.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS12164394B2Database reversion with backup data structures
Publication Date: 2024.12.10 MICROSOFT TECHNOLOGY LICENSING LLC
  • US12164394B2 patent drawing
  • US12164394B2 patent drawing
  • US12164394B2 patent drawing

AI summary

A system for database reversion is described. The system comprises: a database engine configured to host an active database; a log engine configured to generate transaction logs for transactions affecting the active database; a backup engine configured to create a backup data structure to allow for database reversion; and a memory buffer separate from the active database. A page in the active database has an associated page timestamp indicating a most recent update of the page in the active database. The database engine is configured to flush an updated copy of a page in the memory buffer to the active database. The backup engine is configured to, prior to the flush, store an image of the page in the active database to the backup data structure when the page in the active database is older than the time value related to the creation time of the backup data structure.