Cloud Compute-Intensive Workload Management Without Microservice Refactoring
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current cloud data processing systems struggle to manage different compute-intensive data-driven workloads of microservices without refactoring the microservices to handle varying workloads, leading to limitations in processing large datasets due to resource constraints.
Innovation Solution
Implementing a computer-implemented method that generates a plurality of parallel jobs using derivative application instances to process chunks of datasets in parallel, intercepting data processing requests to manage workload variants without modifying the microservices' codebase, utilizing machine learning for rule generation and resource management.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If a single application instance processes data sequentially, then the system structure remains simple, but data processing throughput is limited and time requirements increase
Solution Approach 1:
The patent divides the data processing workload into multiple parallel jobs that are distributed across derivative application instances. Each job processes a specific chunk of the dataset independently, enabling concurrent execution and significantly increasing throughput while managing complexity through structured task division
Solution Approach 2:
The patent transitions from sequential single-instance processing to parallel multi-instance processing by adding the dimension of concurrency. Multiple application instances execute jobs simultaneously across different time slices, transforming a single-dimensional sequential process into a multi-dimensional parallel system
2Adaptability or versatility
If microservices are refactored to handle varying workloads, then workload adaptability improves, but development complexity and time increase
Solution Approach 1:
The patent segments the workload management functionality from the microservice codebase by introducing an external interceptor layer. This interceptor handles workload variant detection and derivative instance generation, allowing the original microservices to remain unchanged while gaining enhanced workload adaptability
Solution Approach 2:
The patent introduces an intermediary interceptor component that sits between the data processing request and the microservice. This intermediary handles the complexity of workload detection, derivative instance generation, and job distribution, shielding the microservice codebase from modification requirements while enabling flexible workload handling
3Power
If more resource allocation is provided to process large datasets, then processing capability increases, but resource consumption and cost increase
Solution Approach 1:
The patent applies partial action by dividing the large dataset into smaller chunks that are processed in parallel. Instead of allocating resources to process the entire dataset sequentially with one large query, the system distributes smaller queries across multiple derivative instances, achieving the same processing capability with more efficient resource utilization
Solution Approach 2:
The patent changes the parameter of data processing from a single large query to multiple smaller queries by introducing an interceptor that modifies request parameters. This transforms the resource consumption pattern from one high-intensity processing event to multiple lower-intensity concurrent events, improving overall resource efficiency
Data Source
AI summary
Enhancing data processing is provided. A plurality of derivative application instances is generated to run a plurality of parallel jobs based on an image of an instance of an application providing a service corresponding to a data processing request. One derivative application instance is generated for each respective job of the plurality of parallel jobs to run the plurality of parallel jobs to meet defined data processing performance objectives. The plurality of parallel jobs is run on the plurality of derivative application instances at the same time in parallel to increase data processing throughput and decrease an amount of time and resources needed to fulfill the data processing request. Each job of the plurality of parallel jobs retrieves a particular chunk of a dataset corresponding to the data processing request from a database to process that particular chunk of the dataset to generate a sub-result of the data processing request.


