Long-lived Data Transactions via Temporary Storage

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Database transactions cannot persist across session boundaries or survive application and database server restarts, leading to inefficiencies and concurrency issues due to the overhead of maintaining locks for atomicity.

Innovation Solution

A system that uses an object manager to facilitate long-lived data transactions by storing changes in a temporary storage table, allowing transactions to span multiple user sessions and server restarts, and mapping columns between the temporary storage table and the source database, enabling flexible commit or rollback of changes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If database transactions use locking to provide atomicity, then data integrity is maintained, but concurrency is reduced and overhead increases

Engineering Contradiction:
Improvedata integrityVSAvoidconcurrency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent introduces a temporary storage table as an intermediary between the source database and the transaction processing system. This temporary storage table holds transactional data during processing, allowing multiple transactions to proceed concurrently without requiring locks on the source database, thus maintaining data integrity while improving concurrency

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent segments the database transaction process into distinct phases: reading data into a temporary storage table, processing transactions on the temporary data, and finally committing or rolling back changes. This segmentation allows concurrent access to the source database while transaction processing occurs on isolated temporary data

Inventive Principle:
Principle #1Segmentation

2Reliability

If database transactions maintain locks for atomicity, then transaction reliability is ensured, but system overhead increases

Engineering Contradiction:
Improvetransaction atomicityVSAvoidsystem overhead
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The temporary storage table acts as a mediator that eliminates the need for continuous locking during transaction processing. By copying data to temporary storage and processing there, the system achieves atomicity through the isolation of temporary data rather than through locks, significantly reducing system overhead

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent creates a copy of the required data in a temporary storage table before processing transactions. This copying approach allows transaction processing to proceed on isolated data without maintaining locks on the source database, reducing the overhead associated with lock management while ensuring transaction atomicity

Inventive Principle:
Principle #26Copying

3Ease of operation

If database transactions cannot persist across session boundaries, then session isolation is maintained, but long-lived transactions are impossible

Engineering Contradiction:
Improvesession isolationVSAvoidtransaction lifespan
Core Design Contradiction:
Ease of operationVSAdaptability or versatility

Solution Approach 1:

The temporary storage table serves as a persistent intermediary that bridges session boundaries. Transaction data is stored in this temporary table that persists across sessions, allowing long-lived transactions to maintain their state while still providing isolation from other sessions through the temporary storage mechanism

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS9589009B2Long-lived data transactions
Publication Date: 2017.03.07 ORACLE INT CORP
  • US9589009B2 patent drawing
  • US9589009B2 patent drawing
  • US9589009B2 patent drawing

AI summary

In one embodiment, a method includes accessing a mapping that represents a correspondence between a column in a source database and a column in a temporary storage table, in response to receiving a data operation request to execute a data operation on a column of the source database. The method further includes changing the temporary storage table by executing the data operation on the temporary storage table and performing a reconstruction operation using data from the temporary storage table and the source database.