Biased Service Level Guarantees for Workload Management

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing workload management techniques in computing environments fail to effectively prioritize and guarantee service levels during peak hours, leading to unsatisfactory results for background jobs due to capacity limitations and varying customer expectations.

Innovation Solution

Implementing biased service level agreements (B-SLA) through segmented clustering, shortest-slack-first scheduling, selective load shedding, and dynamic message reordering, which classify jobs by delay thresholds and prioritize messages based on slack to ensure timely processing and predictive alerting.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional workload management techniques are used during peak hours, then computing resources are shared among all features, but critical jobs fail to meet their delay thresholds due to capacity limitations

Engineering Contradiction:
Improveservice level guaranteeVSAvoidjob delay
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system segments the workload management into different priority levels by classifying jobs based on their delay thresholds. Critical jobs with strict delay requirements are separated from background jobs with more flexible timing, allowing differentiated resource allocation that ensures critical jobs meet their service level agreements even during peak capacity constraints

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system applies different quality of service characteristics to different job types locally. By assigning specific delay thresholds and priorities to individual jobs based on their criticality, the system ensures that each job receives the appropriate level of resource allocation and timing guarantees suited to its specific requirements rather than applying a uniform management approach

Inventive Principle:
Principle #3Local quality

2Reliability

If computing resources are allocated to meet critical job requirements, then service level guarantees are met, but background jobs experience increased delays and unsatisfactory results

Engineering Contradiction:
Improveservice level agreementVSAvoidjob processing efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system dynamically adjusts resource allocation based on real-time workload conditions and job priority levels. During peak hours, the scheduler automatically prioritizes critical jobs with strict delay thresholds while allowing more flexible resource allocation for background jobs, creating a dynamic balance that maintains service level guarantees without completely starving lower-priority work

Inventive Principle:
Principle #15Dynamics

3Ease of operation

If all jobs are treated equally in the queue, then resource allocation is simple, but jobs with different delay tolerances cannot meet their specific service level requirements

Engineering Contradiction:
Improveresource allocation simplicityVSAvoiddelay threshold compliance
Core Design Contradiction:
Ease of operationVSManufacturing precision

Solution Approach 1:

The system changes the scheduling parameter from simple first-in-first-out ordering to a priority-based scheduling mechanism that considers delay thresholds. By introducing priority levels and delay threshold parameters into the scheduling decision process, the system maintains operational simplicity while achieving precise compliance with different service level requirements through parameter-driven job classification and ordering

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS9766960B2Workload-driven techniques for providing biased service level guarantees
Publication Date: 2017.09.19 SALESFORCE INC
  • US9766960B2 patent drawing
  • US9766960B2 patent drawing
  • US9766960B2 patent drawing

AI summary

Techniques and architectures for workload management. A stream of messages is received with servers coupled to provide access to shared system resources. The servers are organized as at least two groups with a first group providing message queuing services and a second group providing message queuing services under first conditions and modified message queuing services under second conditions. Message queuing services are provided with the first group by treating all jobs as equal, processing jobs asynchronously and processing jobs in the background to defer to foreground, non-message queuing services, jobs. Message queuing services are provided with the second group by treating all jobs as equal, processing jobs asynchronously and processing jobs in the background to defer to foreground, non-message queuing services, jobs under the first conditions. Modified message queuing services are provided with the second group by shortest-slack-first scheduling under the second conditions.