Distributed Back-Off Mechanism for Database Partition Load Management
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Database-oriented services face performance and throughput issues due to database overload, even when capacity is sized above requirements, leading to potential failures and service outages, as high concurrent operations reduce operational health and efficiency.
Innovation Solution
Implementing a distributed back-off mechanism that uses commit latency monitoring to temporarily postpone non-batched and batched work items to database partitions with high latency, categorizing work items by priority and latency thresholds to manage load distribution and prevent database overload.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If database capacity is sized above the requirements of the service, then database performance and availability are improved, but the service can still receive uncharacteristically high quantities of incoming requests and capacity may temporarily decrease due to failures
Solution Approach 1:
The system implements commit latency monitoring that continuously measures database response times and provides feedback to the work item scheduling system. When latency exceeds thresholds, the system automatically adjusts work item submission rates, creating a closed-loop control system that dynamically manages database load based on actual performance conditions.
Solution Approach 2:
The patent transforms static database capacity sizing into a dynamic load management system. Instead of relying on fixed over-provisioning, the system dynamically adjusts the rate at which work items are submitted to the database based on real-time latency measurements, allowing the service to adapt to varying load conditions and temporary capacity reductions.
2Productivity
If the service processes high concurrent database operations, then throughput is improved, but database operational health and efficiency decline due to overload
Solution Approach 1:
The system implements a tiered back-off strategy where non-batched work items are backed off when latency exceeds a first threshold, while batched work items are backed off when latency exceeds a second, higher threshold. This partial action approach allows the system to maintain higher throughput by processing batched items under moderate load while protecting database health through selective back-off of non-batched items.
Solution Approach 2:
The patent segments work items into two categories: batched work items and non-batched work items. This segmentation allows differential handling based on priority and latency conditions, enabling the system to maintain throughput for critical batched operations while backing off less critical non-batched operations when the database is under stress.
3Reliability
If the service backs off work items to prevent database overload, then database health is improved, but request processing time increases and service throughput decreases
Solution Approach 1:
The system applies back-off selectively rather than universally. Non-batched work items are backed off when latency exceeds the first threshold, while batched work items continue to be processed even when latency exceeds the first threshold, as long as it remains below the second threshold. This partial application of back-off minimizes the impact on overall throughput while still protecting database health.
Solution Approach 2:
The patent changes the operational parameters of work item processing based on measured latency. When latency is below thresholds, work items are processed normally. When latency exceeds thresholds, the system changes the parameter of work item submission rate by backing off non-batched items or both batched and non-batched items, thereby adapting processing behavior to current database conditions.
4Reliability
If the service monitors commit latency and implements back-off mechanisms, then database overload is prevented, but system complexity increases
Solution Approach 1:
The system implements self-service load management where the database-oriented service autonomously monitors its own commit latency and automatically adjusts its work item submission rate based on measured conditions. The service uses its existing resources to perform monitoring and control functions without requiring external management systems, reducing overall system complexity.
Data Source
AI summary
Embodiments may include a system configured to, for each of multiple database partitions, generate a respective value of commit latency dependent on the latency of one or more previous commit operations directed to that database partition. The system may also be configured to, for a given work item that includes a commit operation to be initiated on a given database partition of said multiple database partitions, determine whether the value of the commit latency for the given database partition exceeds a configurable commit latency threshold. The system may be configured to, in response to determining that the value of the commit latency for the given database partition exceeds the commit latency threshold, postpone the given work item to reduce load on the database partitions and perform the given work item after the postponement. If the commit latency does not exceed the threshold, the work may be performed without the postponement.


