Dynamic Query Parallelism Optimization
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current database systems lack a mechanism to dynamically prioritize the parallel execution of queries based on user workload definitions and available system resources, leading to suboptimal performance.
Innovation Solution
A system that identifies the priority of a user query, checks real-time resource availability, and calculates an optimal degree of parallelism to generate an execution plan, integrating query optimization with workload management.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If a query is executed with high degree of parallelism, then query execution speed is improved, but system resource consumption increases
Solution Approach 1:
The patent implements dynamic adjustment of parallelism degree based on real-time resource availability metrics. The system continuously monitors resource conditions and adjusts the parallelism degree of query execution plans accordingly, transitioning from static to dynamic resource allocation. This allows the system to optimize query execution speed while adapting to changing resource consumption conditions.
Solution Approach 2:
The system changes the parameter of parallelism degree based on resource availability. By calculating an optimal parallelism degree that considers both query priority and real-time resource metrics, the system adjusts execution parameters to balance speed improvement with resource consumption control.
2Productivity
If static parallelism degree is used for query execution, then system complexity is reduced, but query performance optimization is insufficient
Solution Approach 1:
The system performs preliminary calculations of optimal parallelism degree before query execution by evaluating query priority and resource availability metrics in advance. This preliminary action allows the system to prepare optimized execution plans without adding significant complexity during actual query processing.
Solution Approach 2:
The patent introduces an intermediary optimization layer that sits between query submission and execution. This intermediary component calculates optimal parallelism degrees and generates optimized execution plans, acting as a mediator that translates static resource conditions into dynamic execution strategies without requiring fundamental changes to the core database engine.
3Productivity
If dynamic optimization of parallelism degree is implemented, then query performance is improved, but calculation overhead increases
Solution Approach 1:
The system applies partial optimization by focusing calculation efforts on the most critical aspects of query execution planning. Rather than optimizing every aspect of query processing, the system concentrates on determining optimal parallelism degree based on priority and resource metrics, achieving performance improvement with minimal additional calculation overhead.
Data Source
AI summary
Approaches presented herein enable dynamic optimization of a degree to which a query is parallelized for execution. More specifically, a priority associated with an obtained user query for execution is identified. A real-time metric indicating availability of one or more runtime resources is checked. An optimal degree of parallelism is calculated based on the priority associated with the obtained user query and the real-time availability metric. A plan is generated for executing the query using the calculated optimal degree of parallelism.


