Database Change Protection via Staging Table Isolation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Database systems face challenges in efficiently and accurately reversing unintended changes, particularly when such changes are followed by intended modifications, leading to potential security risks and data loss due to the complexity of restoring the database to a previous state.

Innovation Solution

Implementing a system that applies changes to a staging table first, evaluates them for unintended changes, and then applies them to the live database, allowing for easy reversal of unintentional changes while managing dependencies between tables to maintain data integrity.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the database is restored to an earlier state to reverse unintended changes, then the unintended changes are eliminated, but any intended changes made after the unintended change are also eliminated

Engineering Contradiction:
Improvedata integrityVSAvoidtime to restore database
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent segments the database into multiple snapshots representing different points in time. Instead of restoring the entire database to a single earlier state, the system identifies and restores only the specific snapshot that contains the desired state of the affected table, preserving subsequent intended changes while reversing unintended ones.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system performs preliminary actions by creating and storing multiple database snapshots before changes are made. These snapshots serve as pre-prepared restoration points, allowing rapid recovery without needing to replay transactions or revert entire database states, thus eliminating both unintended and subsequent intended changes.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If a single table is updated without considering dependencies, then the update operation is simple and fast, but data consistency across related tables cannot be guaranteed

Engineering Contradiction:
Improveupdate speedVSAvoiddata consistency
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent introduces a dependency graph as an intermediary structure that tracks relationships between database tables. Before updating a table, the system queries this dependency graph to identify all related tables, ensuring that updates maintain referential integrity and data consistency across the entire database while preserving fast update operations.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system implements feedback mechanisms by continuously monitoring and recording table dependencies. When a table is updated, the system uses the dependency information to automatically determine which other tables need corresponding updates, providing real-time feedback on the impact of changes and ensuring data consistency without manual intervention.

Inventive Principle:
Principle #23Feedback

3Measurement precision

If all database changes are logged and tracked, then unintended changes can be identified and reversed accurately, but the system complexity and overhead increase

Engineering Contradiction:
Improvechange detection accuracyVSAvoidsystem complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent extracts only the essential change information needed for restoration purposes into compact snapshot representations. Instead of logging all detailed transactions and metadata, the system captures the critical state of database tables at specific points in time, reducing the overhead of change tracking while maintaining sufficient information for accurate restoration and unintended change identification.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS11269741B2Change-protected database system
Publication Date: 2022.03.08 SALESFORCE INC
  • US11269741B2 patent drawing
  • US11269741B2 patent drawing
  • US11269741B2 patent drawing

AI summary

A request to update an original data value in a first row in a database table in a database system. An updated data value is written to a second row in a staging table in the database system. The updated data value corresponds with the original data value. The first row includes a database table key, which is also included in the second row. The original data value in the database table is replaced with a corresponding replacement value, which is determined based on a value replacement update function that takes as input the updated data value. The staging table maintains a record value for reversing the update to the database table.