Database Workload Management via Service Class Prioritization
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Concurrently accessed database servers face inefficiencies and potential crashes due to unmanaged resource allocation among competing workloads, leading to slower processes and decreased system efficiency.
Innovation Solution
A workload management system that creates context objects to define processes, maps them to service classes with assigned weights and priorities, dynamically allocates resources across nodes based on these classifications, and employs transaction-level admission control to optimize resource utilization.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If resources are allocated equally among all activities, then system simplicity is maintained, but critical processes run slower and system efficiency decreases
Solution Approach 1:
The patent implements service classes with different priority levels (1-10) and weight values that assign different resource allocation qualities to different activities based on their criticality. High-priority activities receive more resources while low-priority activities receive fewer resources, creating local quality differentiation in resource distribution rather than uniform allocation.
Solution Approach 2:
The system changes the parameters of resource allocation by introducing dynamic priority values and weight parameters that can be adjusted based on activity characteristics. The resource manager modifies allocation parameters in real-time based on current system state and activity requirements, transforming static equal allocation into dynamic differentiated allocation.
2Productivity
If no resource management mechanism is implemented, then system complexity is low, but key processes run slower than desired and system efficiency decreases
Solution Approach 1:
The patent segments activities into different service classes (e.g., interactive, batch, real-time) with distinct priority levels and resource requirements. This segmentation allows the resource manager to apply different allocation strategies to different segments, improving overall process execution speed by ensuring critical segments receive adequate resources.
Solution Approach 2:
The resource manager acts as an intermediary between activities and system resources. It receives resource requests from activities, evaluates them against service class definitions and current system state, and allocates resources accordingly. This intermediary layer introduces controlled complexity that enables efficient resource distribution without requiring direct complex interactions between all activities and resources.
3Power
If resources are allocated to maximize throughput, then disk throughput increases, but response time for quick queries deteriorates
Solution Approach 1:
The patent applies local quality by assigning different priority levels to different activity types. Interactive queries receiving priority levels indicating time-sensitive requirements get allocated resources that minimize response time, while batch processing activities receiving priority levels indicating throughput requirements get allocated resources that maximize disk throughput. This creates locally optimized resource allocation for each activity type.
Solution Approach 2:
The system implements dynamic resource allocation where the resource manager continuously monitors system state and adjusts resource distribution based on current activity mix and performance requirements. When interactive queries are present, the system dynamically shifts resources to prioritize response time; when batch processing dominates, resources are dynamically allocated to maximize throughput.
Data Source
AI summary
Several methods and a system of a workload management of a concurrently accessed database server are disclosed. In one embodiment, a method includes applying a weight to a service class. The method also includes generating a priority of the service class. In addition, the method includes selecting a group based on the weight of the service class. The method further includes determining a priority level based on the priority of the service class. The method also includes generating a characteristic of a shadow process through the weight and the priority of the service class. In addition, the method includes executing a query.


