Job Orchestration System Using Resource Status Table
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional serverless computing platforms face inefficiencies in job allocation and execution due to limited data processing units (DPUs) and Internet Protocol (IP) addresses, leading to job failures and suboptimal subnet utilization.
Innovation Solution
The proposed system and method for job orchestration involve queuing and allocating jobs based on available DPUs and subnet conditions, using load balancing rules to allocate jobs across multiple subnets and regions, and implementing a resource status table to track allocations and deallocations.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If conventional allocation logic is used to assign jobs to subnets, then job allocation is simple and quick, but subnet utilization becomes suboptimal and jobs may fail due to insufficient resources
Solution Approach 1:
The system performs preliminary actions by maintaining a resource status table that tracks available data processing units and IP addresses across all subnets before job allocation. This advance preparation enables informed allocation decisions that match jobs to subnets with sufficient resources, preventing job failures while optimizing subnet utilization.
Solution Approach 2:
The system implements feedback mechanisms by continuously monitoring resource status across subnets and using this information to dynamically adjust job allocations. The resource status table provides real-time feedback on DPU and IP address availability, enabling the allocation logic to make data-driven decisions that improve both productivity and reliability.
2Reliability
If jobs are allocated to subnets with available resources, then job execution reliability improves, but system complexity increases due to resource tracking and allocation logic
Solution Approach 1:
The resource status table serves multiple functions: it tracks available DPUs, monitors IP address availability, guides job allocation decisions, and provides feedback for deallocation. This multi-functional component reduces overall system complexity by consolidating what could be multiple separate tracking systems into a single universal resource management structure.
Solution Approach 2:
The resource status table acts as an intermediary between the job allocation logic and the underlying subnet resources. Rather than having complex direct interactions between allocation logic and multiple subnets, the resource status table mediates these interactions by providing a simplified, centralized view of resource availability that the allocation logic can easily consume.
3Adaptability or versatility
If multiple subnets across regions are utilized for job allocation, then system resiliency and scalability improve, but allocation complexity and coordination overhead increase
Solution Approach 1:
The system segments resource tracking by maintaining separate resource status information for each subnet and region in the resource status table. This segmentation allows independent monitoring and management of resources across multiple regions while providing a unified view for allocation decisions, reducing the complexity of coordinating across distributed systems.
Solution Approach 2:
The system adds a new dimension to resource management by introducing a centralized resource status table that aggregates resource information across multiple subnets and regions. This dimensional shift from individual subnet management to multi-dimensional resource view enables complex multi-region allocations while simplifying the coordination logic through a unified allocation interface.
Data Source
AI summary
For each job of a plurality of jobs, a plurality of instances of the job may be generated that are associated with a plurality of subnets of a plurality of regions of an account. Job allocation requests received at a queue may be sequentially processed to determine a respective subnet of a respective region to allocate each job to. The determination may be based on a number of data processing units currently available to the account and one or more subnet conditions of the subnets. Each job may be allocated accordingly to cause an execution of an instance of each job associated with the respective subnet of the respective region. As each job is allocated, a resource status table for the account may be maintained. The table may be updated based on a deallocation request received at the queue subsequent to a completion of each job.


