Unique Transaction Identifier for Parallel NoSQL Processing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current transaction processing systems, particularly those using the two-phase commit protocol, face inefficiencies in error recovery and latency due to serial processing and coordinator bottlenecks, especially in handling multi-shard transactions across heterogeneous systems.

Innovation Solution

A computer-implemented method and system that generates a unique transaction identifier, processes data change requests in parallel, and uses a transaction status table to manage and verify the status of transactions across multiple sources, allowing for efficient data retrieval only when all sources are committed, thereby reducing latency and eliminating the need for serial processing.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the two-phase commit protocol is used to coordinate transactions across multiple sources, then transaction consistency (ACID guarantees) is ensured, but processing latency increases due to serial coordination and coordinator bottlenecks

Engineering Contradiction:
Improvetransaction consistencyVSAvoidprocessing latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent segments the transaction coordination process by assigning a unique transaction identifier to each source independently. Each source can process and verify transactions autonomously using its own identifier, eliminating the need for centralized serial coordination while maintaining transaction consistency through distributed verification.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary actions by pre-generating unique transaction identifiers and distributing them to all sources before the transaction execution. This allows sources to independently track and verify transaction status without waiting for coordinator commands, reducing latency while ensuring consistency.

Inventive Principle:
Principle #10Preliminary action

2Device complexity

If serial processing is used through a coordinator to manage transactions, then transaction coordination is simplified, but system productivity decreases due to the coordinator bottleneck

Engineering Contradiction:
Improvecoordination complexityVSAvoidsystem throughput
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The patent enables each source to serve itself by independently generating, tracking, and verifying transactions using unique transaction identifiers. Sources autonomously determine transaction completion status without coordinator intervention, eliminating the bottleneck while maintaining coordination through distributed identifier verification.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent segments the centralized coordination function into distributed independent operations at each source. Each source handles its own transaction processing with unique identifiers, transforming the serial coordinator model into parallel independent operations that increase throughput while reducing coordination complexity.

Inventive Principle:
Principle #1Segmentation

3Device complexity

If data change requests are sent to multiple sources sequentially, then transaction coordination is easier to manage, but processing time increases due to serial execution

Engineering Contradiction:
Improvecoordination managementVSAvoidtransaction processing time
Core Design Contradiction:
Device complexityVSDuration of action of moving object

Solution Approach 1:

The patent performs the action of distributing unique transaction identifiers to all sources preliminarily, before data change requests are executed. This enables sources to independently process and track transactions in parallel using their assigned identifiers, reducing processing time while maintaining coordination through the identifier system.

Inventive Principle:
Principle #10Preliminary action

4Reliability

If the coordinator waits for status from each source sequentially, then transaction status verification is thorough, but latency increases due to waiting time

Engineering Contradiction:
Improvestatus verification accuracyVSAvoidwaiting time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent enables each source to self-verify transaction status independently using unique transaction identifiers. Sources autonomously determine whether transactions are committed or aborted without the coordinator waiting for sequential status reports, maintaining verification accuracy while eliminating waiting time through parallel independent verification.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS10452424B2Unique transaction identifier based transaction processing
Publication Date: 2019.10.22 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US10452424B2 patent drawing
  • US10452424B2 patent drawing
  • US10452424B2 patent drawing

AI summary

A computer-implemented method for processing a transaction may include, upon receiving a transaction change request, operating a coordinator to generate a unique transaction identifier for the transaction request, send a data change request along with the unique transaction identifier to sources having respective source identifiers, and store the unique transaction identifier along with the respective source identifiers in a transaction status table. The computer-implemented method may further include, upon receiving a query, operating a given source to determine from the transaction status table, any other sources associated with the unique transaction identifier, determine whether the unique transaction identifier is in each of the other sources, and when the unique transaction identifier is in each of the other sources, read data associated with the query from the given source and each of the other sources.