Job Aggregation for Distributed Task Processing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

As distributed systems grow in scale and complexity, managing and transforming data between different systems becomes increasingly complicated due to format differences and the need for efficient processing of large batches of tasks, which existing technologies struggle to address effectively.

Innovation Solution

A scalable job transformation and management system that aggregates small batches of tasks into larger jobs using multiple hosts working in parallel, sharding data based on criteria like client or storage resource identifiers, and auto-scaling hosts based on performance metrics, while also tracking job status for status-dependent actions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If data is processed in small batches through existing technologies, then processing can be performed, but processing efficiency is low and overhead is high

Engineering Contradiction:
Improvedata processing efficiencyVSAvoidprocessing overhead
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent merges multiple small batches of tasks into a single large batch job. The job aggregator collects tasks from multiple sources and combines them into one consolidated job that can be processed more efficiently, reducing the overhead associated with processing numerous small batches separately.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The system performs preliminary actions by pre-processing and aggregating tasks before they are submitted for execution. The job aggregator prepares large batches of tasks in advance, transforming and validating them before submission to the job manager, which reduces processing overhead during execution.

Inventive Principle:
Principle #10Preliminary action

2Quantity of substance

If distributed systems grow in scale, then more resources are available, but management and transformation complexity increases

Engineering Contradiction:
Improvesystem resourcesVSAvoidmanagement complexity
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The patent segments the job processing system into distinct modular components: job aggregators that collect tasks, job transformers that process and validate data, job managers that coordinate execution, and state trackers that monitor progress. This segmentation allows each component to handle specific functions independently, reducing overall management complexity as the system scales.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The job transformer serves as an intermediary component between task sources and job execution. It transforms data from various formats into a standardized job format, managing the complexity of data transformation and format conversion in a centralized manner, which simplifies the overall system architecture.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Productivity

If multiple hosts are used for job transformation, then processing capacity increases, but system coordination becomes more difficult

Engineering Contradiction:
Improveprocessing capacityVSAvoidsystem coordination
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system implements feedback mechanisms where state trackers monitor the status of jobs across multiple hosts and provide this information back to job managers. This feedback loop enables coordinated management of distributed hosts, allowing the system to track job progress, handle failures, and optimize resource allocation across the distributed infrastructure.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS11275608B1Scalable job transformation and management
Publication Date: 2022.03.15 AMAZON TECH INC
  • US11275608B1 patent drawing
  • US11275608B1 patent drawing
  • US11275608B1 patent drawing

AI summary

Methods, systems, and computer-readable media for scalable job transformation and management are disclosed. A plurality of tasks expressed in a first format are received at a host. The tasks are associated with a shard identifier based at least in part on one or more criteria, and the tasks are acquired by the host based at least in part on the shard identifier. A subset of the tasks having a common characteristic are determined. The subset of the tasks are aggregated into a job expressed in a second format, where the job represents the subset of the tasks. The job is provided to a job manager, and the subset of the tasks are scheduled for processing using the job manager.