Concurrent Transaction Page Synchronization via Copy-Based Versioning

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional database systems face challenges in efficiently handling concurrent transactions and maintaining database integrity, particularly when dealing with high volume transactions and complex queries, as they often interfere with each other and struggle with efficient commit stages and data merging processes.

Innovation Solution

The system employs a versioning/copying approach where each transaction operates on a copy of a data page, with a detect component identifying updates from other transactions and a merge component synchronizing changes, ensuring consistency before commit, and utilizing a page marking component to notify transactions of changes, along with optimization features to manage storage and reorganization.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If conventional shadow paging techniques are used to handle concurrent transactions, then transactions can operate concurrently, but the commit stage becomes inefficient and requires additional overhead for merging

Engineering Contradiction:
Improvetransaction processing efficiencyVSAvoidmerge operation complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent implements a copy-based versioning mechanism where each transaction operates on a copy of the data page rather than the original. When a transaction commits, its copy is merged with the main page. This eliminates the need for complex shadow paging and reduces merge overhead during the commit stage, directly addressing the inefficiency problem while maintaining concurrency capabilities.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The patent segments the data page into multiple versions or copies, allowing concurrent transactions to operate on different versions simultaneously. This segmentation enables parallel processing during the commit stage and reduces the complexity of merging operations by managing versions separately rather than requiring complex coordination of shadow pages.

Inventive Principle:
Principle #1Segmentation

2Productivity

If multiple copies of data pages are created to support concurrent transactions, then transaction concurrency is improved, but database growth increases

Engineering Contradiction:
Improveconcurrent transaction supportVSAvoiddatabase size
Core Design Contradiction:
ProductivityVSVolume of stationary object

Solution Approach 1:

The patent implements a mechanism where old page versions are discarded after being merged into the main page. By automatically removing obsolete copies and versions, the system maintains the necessary number of copies for concurrent transactions while preventing unbounded database growth. This lifecycle management of page versions directly addresses the database growth issue.

Inventive Principle:
Principle #34Discarding and recovering

Solution Approach 2:

The patent employs dynamic version management where the number and scope of page copies are adjusted based on transaction needs. Versions are created only when necessary and are dynamically merged or discarded, allowing the system to adapt the storage requirements to actual concurrency demands rather than maintaining a fixed large number of copies, thus controlling database growth.

Inventive Principle:
Principle #15Dynamics

3Productivity

If conventional database systems handle high volume transactions, then transaction processing capacity increases, but database integrity becomes difficult to maintain

Engineering Contradiction:
Improvetransaction processing capacityVSAvoiddatabase integrity
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent applies preliminary locking and validation actions before transactions commit. By establishing locks and verifying integrity conditions in advance, the system prevents conflicting operations from compromising database integrity. This preliminary action approach enables high transaction volume while maintaining reliability through proactive rather than reactive integrity checking.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements feedback mechanisms that monitor transaction progress and database state, allowing the system to adjust transaction processing to maintain integrity. When conflicts or integrity issues are detected, the system receives feedback and modifies transaction handling accordingly, ensuring data integrity is preserved even under high volume concurrent processing conditions.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS8762331B2Concurrent transactions and page synchronization
Publication Date: 2014.06.24 MICROSOFT TECHNOLOGY LICENSING LLC
  • US8762331B2 patent drawing
  • US8762331B2 patent drawing
  • US8762331B2 patent drawing

AI summary

Systems and methodologies are provided for efficiently performing concurrent transactions by multiple users, and tracking data at a logical level beneath a physical level of the object being modified. Each transaction can copy a committed version of the data segment to be modified to its respective space, and can update such copy during modification. A detect component detects whether any data segment being operated upon requires updating as a result of other transactions committing, and a merge component synchronizes the data segment with its committed version. Various optimization procedures can also be incorporated as part of the commit stage, upon completion of the detect and merge process.