Database Resource Boosting for Mixed Workloads

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Effectively sharing system resources across different business units in a database management system while maintaining priority directives outlined within each individual business unit, especially those defined based on Service Level Goal (SLG) directives, is a challenge, particularly in commercial databases that mix multiple business units to maximize economy of scale benefits.

Innovation Solution

A method where a donor collection, not using its assigned resources during a time slice, donates a boost percentage of resources to a donee collection, calculated based on the Greediness Value and resource allocation percentages, allowing the donee collection to execute queries with an increased resource allocation, thereby optimizing resource utilization across workload groups.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If multiple business units are mixed into a single database system to maximize economy of scale benefits, then resource utilization efficiency is improved, but it becomes difficult to maintain priority directives and service level goals for individual business units

Engineering Contradiction:
Improveresource utilization efficiencyVSAvoidability to maintain priority directives for individual business units
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The patent segments the database system into multiple workload groups, each representing a distinct business unit or department. Each workload group is independently managed with its own resource allocation policies, priority settings, and service level goals. This segmentation allows the system to maintain individual business unit requirements while operating as a consolidated system, resolving the contradiction between resource efficiency and adaptability to individual needs.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements dynamic resource allocation where resource assignments are not fixed but can be adjusted in real-time based on current system conditions, workload characteristics, and priority requirements. The system can dynamically shift resources between workload groups, adjust priority levels, and modify service level parameters to accommodate changing business needs while maintaining overall system efficiency.

Inventive Principle:
Principle #15Dynamics

2Reliability

If parameters and performance knobs are adjusted to dedicate larger or smaller portions of resources based on ad hoc needs, then service level goals for specific workloads are improved, but the complexity of managing numerous parameters increases

Engineering Contradiction:
Improveservice level goal satisfactionVSAvoidnumber of parameters and performance knobs to manage
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent changes the approach from manually adjusting numerous individual parameters to using a workload group-based management model where resource allocation is defined through higher-level workload group parameters. Each workload group has configurable parameters such as resource share percentages, priority levels, and service level targets, which automatically translate into detailed resource allocation decisions, reducing the number of parameters administrators need to manage directly.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent implements self-service mechanisms where the database system automatically adjusts resource allocation and priority settings based on workload characteristics, performance metrics, and predefined policies. The system monitors workload performance and autonomously makes adjustments to meet service level goals without requiring manual intervention for each parameter change, thereby reducing management complexity while maintaining reliability.

Inventive Principle:
Principle #25Self-service

3Productivity

If idle resources from one business unit are shared with other active business units, then overall system resource utilization is improved, but it may compromise the priority directives of the idle business unit when its demand returns

Engineering Contradiction:
Improveoverall system resource utilizationVSAvoidpriority directive maintenance for returning business unit
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent implements periodic evaluation and reallocation of resources between workload groups. The system continuously monitors resource usage patterns and periodically adjusts allocations based on current demand while respecting established priority directives. When a business unit's demand returns, the system periodically reevaluates resource distribution and restores appropriate allocations based on the unit's priority level and service level goals, ensuring that temporary sharing does not permanently compromise future service quality.

Inventive Principle:
Principle #19Periodic action

Data Source

PatentUS8612989B1Assigning resources among multiple groups of workloads in a database system
Publication Date: 2013.12.17 TERADATA US INC
  • US8612989B1 patent drawing
  • US8612989B1 patent drawing
  • US8612989B1 patent drawing

AI summary

A computer running a database system receives a query. The database system services a plurality of collections. Each collection includes a plurality of workload groups. Each collection is assigned a percentage of a resource for its use. A donor collection, Cdonor, is not using its assigned percentage of the resource during a time slice tJ. The length in time of time slice tJ is less than a time in which the query is expected to execute. The query is assigned to a workload group. The assignment is determined by the computer applying a workload classification and an exception criteria to parameters of the query. The workload group is part of a donee collection, Cdonee, different from the donor collection. The donor collection donates, through the computer, use of a boost percentage of the resource to the donee collection during the time slice tJ. The boost percentage is proportional to the percentage of the resource assigned to the donee collection, the percentage of the resource assigned to the donor collection, and a Greediness Value related to the amount of the donor collection's allocated percentage of the resource available to be donated. The query is executed by the computer during time slice tJ, with the donee collection using its allocated percentage of the resource plus the boost percentage of the resource to execute the query.