Distributed Job Claiming Without a Central Scheduler

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional distributed job execution systems without a central scheduler face challenges in ensuring nonoverlapping data processing and preventing duplicate job processing, leading to wastage of computational resources.

Innovation Solution

A distributed job execution system that generates and stores job data records in a database, allowing each container to act as a scheduler, updating job statuses before execution, and synchronizing with the database to avoid duplicate processing, with mechanisms to handle failures and retries.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a central scheduler is used to manage distributed job execution, then job scheduling and status tracking are centralized and controlled, but the system becomes a single point of failure and consumes considerable resources

Engineering Contradiction:
Improvesystem reliabilityVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments the centralized scheduler functionality into distributed components. Each container independently performs scheduler functions by attempting to claim jobs from the database and tracking their own execution status, eliminating the single point of failure while distributing the scheduling workload across multiple nodes

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent extracts the scheduling logic from a separate central scheduler component and embeds it directly within each container. This allows containers to autonomously claim and execute jobs without relying on an external scheduling service, improving reliability while reducing overall system complexity

Inventive Principle:
Principle #2Taking out (Extraction)

2Device complexity

If a central scheduler is removed from the distributed job execution system, then system complexity and resource consumption are reduced, but the system becomes unable to ensure nonoverlapping data processing and prevent duplicate job execution

Engineering Contradiction:
Improvesystem complexityVSAvoidjob processing accuracy
Core Design Contradiction:
Device complexityVSManufacturing precision

Solution Approach 1:

The patent implements preliminary action by requiring containers to attempt to claim jobs from the database before executing them. The container updates the job status to 'in-progress' in advance, and other containers check this status before attempting to process the same job, preventing duplicate execution without requiring a central scheduler

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements feedback mechanisms where containers continuously monitor the database for job status updates. When a container successfully claims a job, it updates the status in the database, and this feedback prevents other containers from processing the same job, ensuring accurate job processing distribution

Inventive Principle:
Principle #23Feedback

3Productivity

If multiple containers process jobs simultaneously without coordination, then computational resources are utilized in parallel, but duplicate processing occurs and wastes computational resources

Engineering Contradiction:
Improvejob processing throughputVSAvoidcomputational resource waste
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

The patent introduces the database as an intermediary mechanism that coordinates job claims between multiple containers. Containers interact with the database to claim jobs and update status, which indirectly coordinates their processing activities and prevents duplicate execution while maintaining parallel processing capabilities

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent implements self-service where each container independently manages its own job claiming and execution without requiring coordination from a central scheduler. Containers autonomously check the database for available jobs, claim them by updating status, and execute them, enabling parallel processing while preventing duplication through self-coordination

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS12530228B2Facilitating distributed job execution
Publication Date: 2026.01.20 CAPITAL ONE SERVICES LLC
  • US12530228B2 patent drawing
  • US12530228B2 patent drawing
  • US12530228B2 patent drawing

AI summary

Methods and systems are described herein for facilitating distributed job execution without a central job scheduler. The system may cause a container to, prior to executing job execution code for a job associated with a job data record, update a record instance of the job data record to indicate an updated status for the job and attempt to update the job data record at a database based on the record instance of the job data record. If the container successfully updates the job data record, the container may execute the job execution code for the job. If the container fails to update the job data record, the container may refrain from executing the job execution code for the job. The system may then update a first job data record associated with a first job at the database based on execution of the first job by a first container.