Decentralized Workflow Execution via Virtual Machine Triggering

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional centralized workflow schedulers require dedicated processing resources throughout the workflow execution, leading to inefficiencies in resource allocation and management, especially in cloud environments where jobs with varying resource requirements are executed sequentially.

Innovation Solution

A decentralized workflow execution system where each virtual machine generates workflow code that initiates the next job in the sequence upon completion, utilizing a resource manager to allocate and deallocate system resources dynamically, allowing different jobs to execute on different virtual machines with varying resource sets, and storing workflow data for access by subsequent jobs.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a centralized workflow scheduler is used to monitor and initiate jobs, then workflow execution control is maintained, but dedicated processing resources are consumed continuously throughout the workflow lifecycle

Engineering Contradiction:
Improveworkflow execution controlVSAvoidprocessing resources
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent extracts the centralized workflow scheduler from the system, removing the dedicated processing resources that were continuously consumed for monitoring and job initiation. Each job instead contains embedded logic to trigger the next job in the sequence, eliminating the need for continuous centralized control while maintaining workflow execution reliability.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The system implements self-service by embedding job triggering logic directly within each job definition. Completed jobs automatically initiate their successors without external intervention, allowing the workflow to self-manage its execution sequence without requiring dedicated scheduler resources.

Inventive Principle:
Principle #25Self-service

2Reliability

If a centralized workflow scheduler is used to monitor job progress, then job completion detection is reliable, but resource allocation efficiency decreases

Engineering Contradiction:
Improvejob completion detectionVSAvoidresource allocation efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The centralized monitoring function is extracted and replaced by distributed completion signals from individual jobs. Each job notifies the system of its completion status, eliminating the need for continuous centralized monitoring while maintaining reliable job completion detection through event-driven notifications.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The mechanical centralized monitoring system is replaced with an event-driven architecture where job completion triggers are automatically generated and processed. This substitution eliminates the need for continuous polling or active monitoring, improving resource allocation efficiency through automatic event-based detection.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

3Ease of operation

If dedicated processing resources are allocated throughout the workflow lifecycle, then workflow management is simplified, but resource utilization flexibility is reduced

Engineering Contradiction:
Improveworkflow managementVSAvoidresource utilization flexibility
Core Design Contradiction:
Ease of operationVSAdaptability or versatility

Solution Approach 1:

The system transitions from static dedicated resource allocation to dynamic resource provisioning. Resources are allocated on-demand based on actual workflow needs, with the ability to scale and adapt resource requirements for each job in the sequence, thereby improving resource utilization flexibility while maintaining ease of operation through automated management.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The platform achieves universality by enabling a single resource pool to serve multiple workflow jobs with varying requirements. The system can dynamically allocate different resource configurations to different jobs in the workflow sequence, allowing one infrastructure to handle diverse workloads flexibly without requiring dedicated resources for each job type.

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

Data Source

PatentUS20240004682A1De-centralized workflow execution
Publication Date: 2024.01.04 ORACLE INT CORP
  • US20240004682A1 patent drawing
  • US20240004682A1 patent drawing
  • US20240004682A1 patent drawing

AI summary

Techniques for de-centralized execution of workflows are disclosed. A system executes a sequence of jobs in a workflow. Each job includes application code to perform a defined set of functions. Each job includes wrapper code at one or both ends of the application code. The system executes the sequence of jobs by iteratively spinning up a virtual machine, loading workflow data to be used by application code, executing the application code, and storing modified workflow data. The virtual machine executing one job triggers the next virtual machine to execute the next job in the workflow, without scheduling the next job by a centralized job scheduler. Upon spinning up the next virtual machine, a virtual machine executing a preceding job shuts itself down.