Selective Database Rollback via Transaction Journal Reverse-Application

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing database rollback methods are all-or-nothing, making them ineffective for debugging non-deterministic issues, and they are computationally expensive and disruptive, especially in high-volume data environments. Additionally, legacy databases often lack primary and foreign keys, leading to data corruption and manual intensive conversion processes.

Innovation Solution

A method and system for selective database data rollback that analyzes database journals to revert specific data at a row/column level, identifies primary and foreign keys, and generates a copy of the data by reverse-applying transaction journal entries, allowing for granular control and data integrity improvements.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a table-wide or database-wide rollback is performed, then data integrity is restored to an earlier point in time, but computational resources are excessively consumed and production data may be unnecessarily affected

Engineering Contradiction:
Improvedata integrityVSAvoidcomputational resources
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The patent segments the rollback operation from database-wide to table-specific level. Instead of rolling back entire databases, the system identifies and rolls back only the specific tables containing problematic data, dramatically reducing computational resources while maintaining data integrity for affected tables.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies local quality by making rollback effects localized to specific tables rather than uniformly applied across the entire database. This allows different parts of the database to maintain different states, with only problematic tables being rolled back while production data in other tables remains intact.

Inventive Principle:
Principle #3Local quality

2Reliability

If a table-wide or database-wide rollback is performed, then data integrity is restored to an earlier point in time, but production data that should not be affected is unnecessarily altered

Engineering Contradiction:
Improvedata integrityVSAvoidunintended data alteration
Core Design Contradiction:
ReliabilityVSObject-affected harmful factors

Solution Approach 1:

The patent segments the rollback scope to affect only specific tables identified as containing issues, rather than applying rollback uniformly across the entire database. This prevents unintended alteration of production data in tables that are not problematic.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent extracts the rollback operation from a database-wide context and applies it selectively to only those tables that require it. This extraction allows the system to isolate and revert only the problematic portions while leaving the rest of the production database untouched.

Inventive Principle:
Principle #2Taking out (Extraction)

3Reliability

If conventional rollback methods are used, then database crashes and data corruption are prevented, but debugging of non-deterministic issues is ineffective because entire databases must be rolled back

Engineering Contradiction:
Improvedata protectionVSAvoiddebugging capability
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The patent segments the rollback capability to operate at the table level rather than database level, enabling developers to roll back specific tables for debugging purposes without affecting the entire database. This granular control makes debugging non-deterministic issues effective while maintaining data protection.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies partial action by performing rollback only on the extent necessary for debugging specific tables, rather than applying excessive database-wide rollback. This allows iterative debugging where only problematic tables are reverted, making the debugging process efficient and controlled.

Inventive Principle:
Principle #16Partial or excessive action

4Adaptability or versatility

If legacy database schemas without key constraints are used, then system compatibility is maintained, but data corruption occurs due to lack of constraints on primary and foreign keys

Engineering Contradiction:
Improvesystem compatibilityVSAvoiddata integrity
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent applies preliminary action by automatically discovering and establishing key constraints (primary keys and foreign keys) before data corruption can occur. This proactive approach adds data integrity safeguards to legacy schemas without requiring complete schema redesign, maintaining compatibility while preventing future corruption.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent changes the parameters of legacy schemas by automatically adding key constraints to tables that previously lacked them. This modifies the schema structure to enforce data integrity rules while maintaining the overall schema compatibility with existing applications.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS11868217B2Selective database data rollback
Publication Date: 2024.01.09 CDW LLC
  • US11868217B2 patent drawing
  • US11868217B2 patent drawing
  • US11868217B2 patent drawing

AI summary

A selective database rollback method includes identifying a table, identifying a root key, storing a target rollback date, retrieving schema information including keys, ordering the table, iterating over the table, storing the current table state, obtaining a transaction journal, and reverse-applying the transaction journal to generate an output file. A method or system for identifying database key includes iterating over a table's columns and rows, generating similarity metrics by comparing column-wise and/or row-wise data, and comparing the generated similarity metrics to a threshold value. A server includes a processor and a memory storing instructions that, when executed by the one or more processors, cause the server to identify a table, identify a root key, store a target rollback date, retrieve schema information including keys, order the table, iterate over the table, store the current table state, obtain a transaction journal, and reverse-apply the transaction journal to generate an output file.