Deferred Transaction Commits via Delta Aggregation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Database management systems face challenges in providing appropriate levels of application consistency while maintaining system performance, especially in scenarios with high concurrency and large volumes of updates, where conflicts and performance degradation are common, particularly for data types that can tolerate eventual consistency rather than immediate accuracy.

Innovation Solution

The implementation of a system that uses a primary table with a secondary table for delta information, allowing for varying levels of application consistency based on data types, current state, and external factors, employing delta rows and aggregation functions to minimize direct updates to the primary table, thereby reducing contention and optimizing performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If higher isolation levels are imposed to ensure data consistency during concurrent transactions, then data consistency is improved, but system performance deteriorates due to increased lock contention

Engineering Contradiction:
Improvedata consistencyVSAvoidsystem performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments the update process into two distinct phases: a read phase where transactions can read data without locks, and a commit phase where locks are acquired only for the brief moment needed to apply updates. This segmentation allows concurrent reads to proceed without blocking while ensuring consistency during the brief commit window, thereby resolving the contradiction between data consistency and system performance.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements preliminary validation during the read phase by collecting all necessary data and validating update logic before acquiring locks. This preliminary action ensures that when locks are finally acquired during the commit phase, the actual lock-held duration is minimized to only what is necessary for applying updates, reducing lock contention while maintaining consistency.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If optimistic concurrency control is used to avoid locking and improve performance, then system performance is improved, but complexity and error-proneness increase due to required error detection and correction algorithms

Engineering Contradiction:
Improvesystem performanceVSAvoiderror detection and correction algorithms
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent introduces an intermediary mechanism in the form of a structured commit protocol that mediates between optimistic reads and pessimistic consistency requirements. This intermediary layer handles conflict detection and resolution automatically through a standardized commit process, eliminating the need for complex error detection and correction algorithms in application code while maintaining system performance.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If serialization is imposed on each customer's access to inventory data to ensure consistency, then data consistency is improved, but system performance deteriorates as the system grinds to a halt under high concurrency

Engineering Contradiction:
Improveinventory consistencyVSAvoidthroughput
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments inventory access into read operations that require no locking and can proceed in parallel, and commit operations that acquire locks only briefly to apply updates. This allows multiple customers to read inventory data simultaneously without serialization, while updates are applied in a controlled manner during brief commit windows, maintaining consistency without grinding the system to a halt.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent enables continuous useful action by allowing read operations to proceed continuously without blocking, even during update operations. Only the brief commit moment requires locking, while the majority of the transaction time can be spent performing useful read and validation work concurrently, thereby maintaining high throughput while ensuring inventory consistency.

Inventive Principle:
Principle #20Continuity of useful action

Data Source

PatentUS9239858B1High-concurrency transactional commits
Publication Date: 2016.01.19 AMAZON TECH INC
  • US9239858B1 patent drawing
  • US9239858B1 patent drawing
  • US9239858B1 patent drawing

AI summary

Systems and methods are presented for performing concurrent updates on a shared value. A request to update a shared value is stored in a secondary database table, and the update to the shared value is deferred. Application of an aggregation function to delta values stored in the secondary database table may produce an aggregate value that can be applied to the shared value in a consolidated update.