Dynamic Data Pipeline Scheduling via Complexity and Execution Time

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing data pipeline management systems face challenges in optimizing resource usage and ensuring data freshness, often leading to over-allocation of resources and missed service level agreements (SLAs).

Innovation Solution

A computer-implemented method that generates a complexity score and predicts execution time for data pipeline jobs, using these metrics to calculate a priority score. This priority score is then used to schedule data pipeline jobs, optimizing resource usage and ensuring data freshness.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If data pipeline jobs are scheduled using traditional methods, then resource allocation is simplified, but resource over-allocation occurs and service level agreements are missed

Engineering Contradiction:
Improveservice level agreement complianceVSAvoidresource usage efficiency
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The system transforms the scheduling approach by changing parameters from static resource allocation to dynamic priority-based scheduling. It introduces complexity scores, predicted execution times, and priority scores as adjustable parameters that adapt to job characteristics, enabling optimized resource allocation that meets service level agreements while improving resource usage efficiency.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The system implements feedback mechanisms by continuously monitoring job execution characteristics and using machine learning models to predict execution times. These predictions feed back into the priority score calculation, creating a closed-loop system that adjusts scheduling decisions based on actual performance data, thereby improving both reliability and resource efficiency.

Inventive Principle:
Principle #23Feedback

2Productivity

If data pipeline jobs are scheduled without complexity assessment, then scheduling is faster, but resource optimization is poor

Engineering Contradiction:
Improvescheduling efficiencyVSAvoidscheduling system complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system enables self-service scheduling by automatically calculating complexity scores and predicted execution times using machine learning models. The scheduling system assesses job characteristics and determines optimal schedules without manual intervention, maintaining high scheduling efficiency while incorporating sophisticated complexity assessment through automated analysis of job parameters.

Inventive Principle:
Principle #25Self-service

3Loss of information

If static scheduling is used, then system complexity is low, but data freshness is not ensured

Engineering Contradiction:
Improvedata freshnessVSAvoidscheduling system complexity
Core Design Contradiction:
Loss of informationVSDevice complexity

Solution Approach 1:

The system transitions from static to dynamic scheduling by continuously calculating priority scores based on current job characteristics, predicted execution times, and resource availability. This dynamic approach ensures data freshness by adapting scheduling decisions to changing conditions, while the modular architecture manages system complexity through reusable machine learning models and standardized priority calculation mechanisms.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS20250045070A1Heuristic data pipeline scheduling
Publication Date: 2025.02.06 KYNDRYL INC
  • US20250045070A1 patent drawing
  • US20250045070A1 patent drawing
  • US20250045070A1 patent drawing

AI summary

A computer-implemented method, including: receiving, by a computing device, a data pipeline job request; generating, by the computing device, a complexity score for the data pipeline job request; determining, by the computing device, a predicted execution time for the data pipeline job request; generating, by the computing device, a priority score for the data pipeline job request based on the predicted execution time and the generated complexity score; and comparing, by the computing device, the priority score for the data pipeline job request to another priority score to determine a schedule for the data pipeline job request.