Dynamic Transaction Coalescing for Server Load Management
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In computing environments, the simultaneous processing of client queries by backend servers often leads to overload and missed deadlines due to the lack of differentiation between critical and non-critical queries, as well as queries requiring cached or live data, resulting in inefficient client-server communication.
Innovation Solution
Implementing a dynamic transaction coalescing system that organizes queries into execution windows with assigned deadlines and triggers, allowing queries to be executed based on their characteristics and backend server knowledge, ensuring timely and efficient processing.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If queries are processed simultaneously without differentiation, then processing speed is improved, but server overload occurs and deadlines are missed
Solution Approach 1:
The patent segments queries into different execution windows based on their characteristics and deadlines. Each execution window represents a discrete time slot for processing a subset of queries, allowing the system to manage workload systematically rather than processing all queries simultaneously, thus preventing server overload while maintaining deadline adherence.
Solution Approach 2:
The patent implements dynamic execution windows that can be adjusted based on system conditions and query characteristics. The execution windows are not fixed but can be modified in real-time to optimize processing efficiency and meet varying deadline requirements, allowing the system to adapt to changing loads and priorities.
2Productivity
If all queries are combined into a single batch, then processing efficiency is improved, but query-specific deadlines and criticality are ignored
Solution Approach 1:
The patent applies local quality by assigning different characteristics and priorities to different execution windows based on the specific needs of queries within each window. Each execution window can have customized parameters such as deadline, priority level, and processing requirements, allowing the system to treat similar queries uniformly while differentiating between various query types, thus maintaining both efficiency and adaptability.
3Reliability
If execution windows are created with strict deadlines, then deadline adherence is improved, but system flexibility and responsiveness to varying query types are reduced
Solution Approach 1:
The patent makes the execution window system dynamic by allowing window parameters such as deadlines and priorities to be adjusted based on real-time system conditions and query characteristics. This dynamic approach enables the system to maintain strict deadlines when necessary while also adapting to varying query types and system loads, thus resolving the contradiction between reliability and flexibility.
4Reliability
If queries are processed individually, then query-specific requirements are met, but communication overhead and processing time increase
Solution Approach 1:
The patent merges similar queries into the same execution window when they share common characteristics such as deadline, priority, and processing requirements. This combining approach reduces communication overhead and processing time by handling multiple queries in batches while still meeting their specific requirements through the customized execution window parameters, thus resolving the contradiction between individual query handling and efficiency.
Data Source
AI summary
The disclosed computer-implemented method includes establishing a coalescing service configured to combine queries received at the coalescing service. The method further includes instantiating, within the coalescing service, multiple execution windows to which the received queries are to be assigned, where each execution window has an assigned deadline within which to execute. The method also includes analyzing a first query among the received queries to identify characteristics of the first query. The method then includes assigning the first query to a first execution window among the execution windows according to the identified characteristics. Then, upon detecting the occurrence of a specified trigger for at least one of the queries in the first execution window, the method includes executing those queries, including the first query, that are assigned to the first execution window. Various other methods, systems, and computer-readable media are also disclosed.


