Reliability-Aware Job Scheduling in Data Centers

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing data center scheduling systems do not effectively account for the reliability of computing devices, leading to inefficiencies and potential data loss due to device failures, as they typically schedule jobs assuming devices will never fail.

Innovation Solution

Implementing a reliability-aware scheduler that assigns reliability scores to processing entities and jobs, using independently derived statistical models and real-time data to schedule jobs on entities with sufficient reliability, ensuring that critical tasks are executed on more reliable devices while less critical tasks can be scheduled on less reliable ones.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If traditional scheduling systems assume devices will never fail, then scheduling simplicity is maintained, but reliability of job execution deteriorates

Engineering Contradiction:
Improvescheduling system complexityVSAvoidjob execution reliability
Core Design Contradiction:
Device complexityVSReliability

Solution Approach 1:

The system performs preliminary reliability assessments of processing entities before scheduling jobs. By evaluating reliability scores in advance and matching them with job reliability requirements, the system proactively prevents scheduling failures rather than reacting to them, thus improving job execution reliability without significantly increasing operational complexity

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system implements feedback mechanisms that continuously monitor processing entity reliability and update scheduling decisions accordingly. When reliability conditions change, the system adjusts job assignments dynamically, ensuring that jobs are always scheduled on appropriate entities. This feedback loop improves reliability while maintaining manageable complexity through automated adjustments

Inventive Principle:
Principle #23Feedback

2Reliability

If redundancy is used to minimize damage from failures, then reliability is improved, but resource utilization deteriorates

Engineering Contradiction:
Improvesystem reliabilityVSAvoidresource utilization
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

Instead of uniformly applying redundancy across all processing entities, the system applies reliability-aware scheduling that matches specific jobs with entities having appropriate reliability levels. Critical jobs are assigned to high-reliability entities while less critical jobs can tolerate lower reliability, optimizing resource utilization without sacrificing overall system reliability

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The system changes the parameter of reliability assessment from a static binary state to a dynamic continuous score. By calculating reliability scores based on historical performance and current conditions, the system can make nuanced scheduling decisions that maximize resource utilization while maintaining appropriate reliability levels for each job

Inventive Principle:
Principle #35Parameter changes

3Speed

If jobs are scheduled without considering reliability scores, then scheduling speed is maintained, but data loss increases

Engineering Contradiction:
Improvescheduling speedVSAvoiddata loss
Core Design Contradiction:
SpeedVSLoss of information

Solution Approach 1:

The system performs preliminary calculations of reliability scores using historical data and statistical models before the actual scheduling decision. This pre-computation approach allows the scheduling system to quickly match jobs with appropriate entities based on pre-evaluated reliability metrics, maintaining scheduling speed while preventing data loss through informed decisions

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system implements dynamic reliability scoring that adapts to changing conditions while maintaining efficient scheduling. By continuously updating reliability scores based on new data and adjusting job assignments in real-time, the system prevents data loss without significantly impacting scheduling speed through optimized computational approaches

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS9436517B2Reliability-aware application scheduling
Publication Date: 2016.09.06 MICROSOFT TECHNOLOGY LICENSING LLC
  • US9436517B2 patent drawing
  • US9436517B2 patent drawing
  • US9436517B2 patent drawing

AI summary

Reliability-aware scheduling of processing jobs on one or more processing entities is based on reliability scores assigned to processing entities and minimum acceptable reliability scores of processing jobs. The reliability scores of processing entities are based on independently derived statistical reliability models as applied to reliability data already available from modern computing hardware. Reliability scores of processing entities are continually updated based upon real-time reliability data, as well as prior reliability scores, which are weighted in accordance with the statistical reliability models being utilized. Individual processing jobs specify reliability requirements from which the minimum acceptable reliability score is determined. Such jobs are scheduled on processing entities whose reliability score is greater than or equal to the minimum acceptable reliability score for such jobs. Already scheduled jobs can be rescheduled on other processing entities if reliability scores change. Additionally, a hierarchical scheduling approach can be utilized.