OLTP Throttling via Staggered Thread Delays

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

On-line transactional processing (OLTP) systems with non-relational databases face inefficiencies due to throttling processes that limit data processing rates, leading to dropped storage requests when exceeding throughput limits, which reduces overall system efficiency.

Innovation Solution

Implementing a technique where OLTP systems divide tasks into threads based on throughput and transaction time limits, distributing processing delays across these threads to manage and process tasks efficiently within the specified limits, thereby maintaining throughput without exceeding transaction processing time.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If the OLTP system increases the data processing rate to improve throughput, then the system throughput is improved, but the transaction processing time limit is exceeded

Engineering Contradiction:
Improvesystem throughputVSAvoidtransaction processing time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent segments the transaction processing into multiple batches, where each batch is processed separately within the throttling window. This allows the system to maintain high throughput by processing multiple batches sequentially, while each individual batch respects the transaction processing time limit. The segmentation of processing workload resolves the contradiction between overall throughput and individual transaction timing constraints.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements periodic processing cycles with defined throttling windows and inter-window delays. Within each throttling window, the system processes data at maximum throughput rate, then pauses for a specified delay period. This periodic action pattern allows the system to achieve high average throughput while ensuring that no single transaction processing exceeds the time limit, as processing is reset with each new window cycle.

Inventive Principle:
Principle #19Periodic action

2Loss of time

If the throttling process limits the processing rate to maintain transaction time limits, then the transaction processing time limit is maintained, but the system throughput is reduced

Engineering Contradiction:
Improvetransaction processing timeVSAvoidsystem throughput
Core Design Contradiction:
Loss of timeVSProductivity

Solution Approach 1:

The patent eliminates idle retry periods by implementing continuous processing across multiple throttling windows. Instead of stopping processing when the throttling limit is reached and waiting for retries, the system continuously submits new batches in subsequent windows without interruption. This continuous useful action maximizes throughput while maintaining compliance with transaction time limits through the structured window-delay pattern.

Inventive Principle:
Principle #20Continuity of useful action

Solution Approach 2:

The patent transforms the throttling constraint from a throughput-reducing limitation into a rhythmic processing pattern. By organizing processing into periodic windows with predictable delays, the system achieves consistent throughput that respects time limits while avoiding the inefficiency of random retries. The periodic structure converts what would be wasted idle time into a predictable, manageable processing rhythm.

Inventive Principle:
Principle #19Periodic action

3Productivity

If the system stores large amounts of data at a rate greater than the database can complete operations, then the data storage rate is improved, but storage requests are dropped

Engineering Contradiction:
Improvedata storage rateVSAvoidstorage request completion
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent segments the large data storage operation into multiple smaller batches, each submitted within a throttling window. This segmentation ensures that no single storage request exceeds the database's processing capacity, preventing request drops while maintaining high overall storage rates. Each batch is independently processed and acknowledged, ensuring reliable completion while achieving bulk storage efficiency.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent prepares and structures data into batches before submission, organizing the data in advance to optimize throughput. By pre-processing and batching data before encountering the throttling constraint, the system maximizes the utilization of available throughput capacity while ensuring that each batch is ready for immediate processing, thereby maintaining both high storage rates and reliable completion.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11340948B2Timed multi-thread access for high-throughput slow-response systems
Publication Date: 2022.05.24 MICROSOFT TECHNOLOGY LICENSING LLC
  • US11340948B2 patent drawing
  • US11340948B2 patent drawing
  • US11340948B2 patent drawing

AI summary

A method for controlling transactional processing system having transactions that include multiple tasks, a throughput limit a transaction processing time limit includes allocating a plurality of threads to be used by multiple tasks to achieve a throughput approximating the throughput limit. The method assigns the multiple tasks to the plurality of threads and assigns respectively different processing delays to the plurality of threads. The processing delays span an interval less than the transaction processing time limit. The method processes the multiple tasks within the transaction processing time limit by executing the plurality of threads at times determined by the respective processing delays.