Dual Snapshot Database Concurrency Control

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Database latency issues arise due to exclusive locking of data during read-for-update transactions, preventing concurrent access and affecting overall system performance.

Innovation Solution

Implementing a dual snapshot system in a multi-version concurrency control database that allows concurrent access to uncommitted updated data by maintaining separate read-only and updatable snapshots, enabling read-only transactions to access uncommitted data without waiting for locks and reducing the need for time-consuming locks.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If exclusive locking is used during read-for-update transactions, then data integrity and transaction safety are improved, but database latency and system responsiveness deteriorate

Engineering Contradiction:
Improvedata integrityVSAvoiddatabase latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent segments data access into two independent paths: read-only transactions access data through one path while read-for-update transactions access through another path. This segmentation allows both transaction types to proceed simultaneously without blocking each other, resolving the contradiction between data integrity (maintained through proper transaction isolation) and database latency (reduced through parallel access paths)).

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a mediator mechanism that allows read-only transactions to access uncommitted data modified by read-for-update transactions without requiring locks. The mediator enables safe concurrent access by managing the relationship between different transaction types, allowing read-only transactions to see uncommitted changes while maintaining transaction safety, thus reducing latency without sacrificing reliability.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If exclusive locking is used during read-for-update transactions, then transaction safety is improved, but system productivity and concurrency deteriorate

Engineering Contradiction:
Improvetransaction safetyVSAvoidsystem concurrency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent divides the data access system into separate segments for read-only and read-for-update transactions. This segmentation enables multiple transactions to execute in parallel without mutual exclusion, significantly improving system concurrency and productivity while maintaining transaction safety through proper isolation mechanisms for each segment.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent creates a copy of the data structure that allows read-only transactions to access uncommitted data without affecting read-for-update transactions and vice versa. This copying mechanism enables concurrent operations on the same data by different transaction types, improving productivity while preserving transaction safety through controlled access to data copies.

Inventive Principle:
Principle #26Copying

3Stability of the object's composition

If read-only transactions wait for locks to be released, then data consistency is improved, but system responsiveness and latency deteriorate

Engineering Contradiction:
Improvedata consistencyVSAvoidtransaction waiting time
Core Design Contradiction:
Stability of the object's compositionVSLoss of time

Solution Approach 1:

The patent introduces an intermediary mechanism that allows read-only transactions to access uncommitted data modified by read-for-update transactions without waiting for locks. The intermediary manages data consistency by enabling read-only transactions to see the latest data state while maintaining proper transaction isolation, thus eliminating waiting time without sacrificing data consistency.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent makes the data access system dynamic by allowing read-only transactions to adaptively access data based on the current transaction state. Instead of static locking where read-only transactions must wait, the system dynamically allows concurrent access to uncommitted data, improving responsiveness while maintaining consistency through controlled data visibility rules.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS8046334B2Dual access to concurrent data in a database management system
Publication Date: 2011.10.25 SAP SE
  • US8046334B2 patent drawing
  • US8046334B2 patent drawing
  • US8046334B2 patent drawing

AI summary

Various embodiments include one or more of systems, methods, software, and data structures that allow dual access to concurrent data in a database management system including uncommitted updated data. Some embodiments include a dual snapshot of data in a multi-version concurrency control style database, but the embodiments described herein are equally applicable to virtually any other type of database and database management system.