Event Handler for Complex Job Scheduling

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current job scheduling techniques are limited in their ability to interrelate tasks and schedule jobs based on complex conditions, including job status changes and non-job related state changes within and outside the database, requiring users to write specific routines to detect changes and trigger job execution.

Innovation Solution

A job scheduling system that utilizes a message passing/queuing system, where events are enqueued as messages in queues, allowing users to subscribe to specific conditions and launch jobs based on scheduler-generated and user-generated events, enabling complex conditional job triggering.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If current job scheduling techniques are used, then jobs can be scheduled by date/time or simple message triggers, but the system cannot handle complex conditional scheduling or interrelate tasks based on job status changes

Engineering Contradiction:
Improvejob scheduling flexibilityVSAvoidscheduling system complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent introduces an event handler as an intermediary component that sits between the database environment and the job scheduling system. This event handler captures job status changes and other events, converts them into standardized messages, and routes them to appropriate queues. This intermediary layer enables complex conditional scheduling without requiring the core scheduling system to become more complex, as the event handler absorbs the complexity of event detection and message routing.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The scheduling system is segmented into distinct functional components: event sources that generate events, an event handler that processes events, message queues that buffer and route messages, and job schedulers that execute jobs. This segmentation allows each component to specialize in specific tasks, enabling the system to handle complex scheduling scenarios while maintaining manageable complexity in each individual component.

Inventive Principle:
Principle #1Segmentation

2Adaptability or versatility

If users write specific routines to detect state changes and send messages, then complex conditional job triggering is possible, but the ease of operation decreases

Engineering Contradiction:
Improveconditional job triggering capabilityVSAvoidjob setup simplicity
Core Design Contradiction:
Adaptability or versatilityVSEase of operation

Solution Approach 1:

The event handler automatically detects job status changes and other events in the database environment without requiring user-written detection routines. It self-services by capturing events, converting them into standardized messages, and routing them to appropriate queues. This eliminates the need for users to write custom detection and messaging code, significantly improving ease of operation while maintaining the ability to handle complex scheduling conditions.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The event handler is designed as a universal component that can handle multiple types of events (job completions, failures, state changes) and route them to different destinations based on predefined rules. This multi-functional design allows the system to handle diverse scheduling scenarios through a single standardized interface, improving ease of operation by providing a unified approach to event-driven scheduling.

Inventive Principle:
Principle #6Universality (Multi-functionality)

3Reliability

If automatic job starting on failure is implemented, then basic error handling is provided, but the system cannot respond to complex conditions or non-job related state changes

Engineering Contradiction:
Improvejob error handlingVSAvoidresponse to complex conditions
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The system implements a feedback mechanism where the event handler continuously monitors job status changes and other events, and this information is fed back to the job scheduling system through message queues. This feedback loop enables the system to respond to complex conditions by allowing jobs to be triggered or modified based on the current state of the system, not just simple failure conditions. The feedback mechanism supports sophisticated scheduling decisions while maintaining reliable error handling.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS7950011B2Leveraging advanced queues to implement event based job scheduling
Publication Date: 2011.05.24 ORACLE INT CORP
  • US7950011B2 patent drawing
  • US7950011B2 patent drawing
  • US7950011B2 patent drawing

AI summary

A job scheduling technique that allows jobs to be launched as a result of messages which are not targeted specifically at the job, and for jobs to be interrelated in complex ways.