Multi-threaded Order Processing Segmentation to Prevent Database Deadlocks

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

High volume order processing systems face inefficiencies due to sequential processing of orders, leading to resource contention issues and database deadlocks, which delay the order processing and fulfillment process.

Innovation Solution

Implementing a multi-threaded architecture to preprocess orders into smaller data sets, allowing for parallel processing without database locks, thereby reducing contention and enhancing processing efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If orders are processed sequentially in a batch process, then database deadlocks are prevented, but processing time increases and productivity decreases

Engineering Contradiction:
Improvedatabase deadlock preventionVSAvoidorder processing speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments the order processing workload by creating multiple threads that process different subsets of orders simultaneously. Each thread handles a portion of the batch, allowing parallel execution while maintaining database integrity through controlled access patterns. This segmentation enables concurrent processing without causing database deadlocks.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies preliminary action by pre-processing orders to create a structured format before distributing them to multiple threads. Orders are normalized and organized in advance, allowing threads to process them efficiently in parallel. This preliminary organization enables faster processing while maintaining data consistency.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If multiple threads process orders in parallel, then processing speed increases, but resource contention and database locks may occur

Engineering Contradiction:
Improveorder processing speedVSAvoiddatabase lock prevention
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent divides the order batch into distinct segments assigned to different threads. Each thread processes its assigned segment independently, reducing contention for database resources. This segmentation strategy allows parallel processing while minimizing the risk of database locks by limiting the scope of concurrent access.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements local quality by giving each thread specialized access patterns to specific portions of the database based on its assigned order segment. Threads are configured to access only the data relevant to their segment, reducing conflicts with other threads. This localized access strategy maintains high processing speed while preventing database lock issues.

Inventive Principle:
Principle #3Local quality

3Loss of energy

If sequential batch processing is used, then resource contention is minimized, but operation efficiency and customer satisfaction decrease

Engineering Contradiction:
Improveresource contentionVSAvoidoperation efficiency
Core Design Contradiction:
Loss of energyVSProductivity

Solution Approach 1:

The patent segments the processing workload across multiple threads that operate in parallel, significantly improving operation efficiency. Each thread handles a portion of the orders, reducing the time required to complete the batch while maintaining controlled resource access patterns that minimize contention.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent enables continuous useful action by keeping multiple threads actively processing orders simultaneously rather than waiting for sequential completion. This parallel execution maintains high resource utilization and improves throughput, while the structured approach ensures resource contention remains manageable.

Inventive Principle:
Principle #20Continuity of useful action

Data Source

PatentUS8015079B2Pick release performance using a multi-threaded architecture to distribute the workload across multiple processors
Publication Date: 2011.09.06 ORACLE INT CORP
  • US8015079B2 patent drawing
  • US8015079B2 patent drawing
  • US8015079B2 patent drawing

AI summary

In various embodiments, methods and systems can provide highly efficient order processing suitable for high volume order processing businesses. A batch of orders can be preprocessed to create smaller data sets that group orders for the same item together. The smaller data sets can then be analyzed and processed in parallel without causing database locks. Thus, the time required to complete the order fulfillment cycle may be reduced, which may in turn, increase one or more of operation efficiency, customer satisfaction, sales volume and profits.