Cloud Distributed System Adaptive Load Balancing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing systems for processing data from mobile devices face challenges in scalability, fault tolerance, and efficient recovery from errors, particularly in continuous data processing environments where data becomes stale or irrelevant if not processed promptly.

Innovation Solution

A cloud-based distributed system with a fault-tolerant architecture that implements checkpoint-based partial rollback recovery and adaptive load balancing, allowing for continuous processing and minimizing downtime by reallocating workloads and using sync streams for efficient data management and communication between mobile and cloud platforms.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If traditional batch processing systems are used to process mobile device data, then system complexity is reduced, but processing speed and data relevance deteriorate because data becomes stale before processing completes

Engineering Contradiction:
Improveprocessing speedVSAvoidsystem complexity
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The patent transitions from static batch processing to dynamic continuous processing, where the system adapts its processing rate and resource allocation based on incoming data flow and system load conditions. This enables the system to maintain high processing speed while managing complexity through adaptive control mechanisms.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The continuous processing system is segmented into multiple independent processing stages and micro-batches, allowing parallel processing of data streams. This segmentation enables the system to achieve high processing speed through concurrent operations while keeping individual processing units manageable in complexity.

Inventive Principle:
Principle #1Segmentation

2Productivity

If cloud-based distributed systems are implemented to process large data volumes, then processing capacity and scalability are improved, but system reliability and fault tolerance worsen due to the distributed nature introducing more failure points

Engineering Contradiction:
Improveprocessing capacityVSAvoidsystem reliability
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system performs preliminary actions by pre-processing data in micro-batches and maintaining intermediate results in distributed cache before full processing. This allows the system to recover from failures by resuming from checkpointed states rather than restarting entire processing pipelines, thereby maintaining high productivity while improving reliability through fault isolation.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements checkpoint-based recovery where the system periodically saves processing state and can discard failed processing attempts, recovering from errors by resuming from the last valid checkpoint. This mechanism enables the distributed system to maintain high productivity while compensating for reduced reliability through systematic error recovery.

Inventive Principle:
Principle #34Discarding and recovering

3Reliability

If checkpoint-based partial rollback recovery is implemented, then system reliability is improved by enabling error recovery, but processing time and productivity worsen due to rollback and re-execution overhead

Engineering Contradiction:
Improveerror recovery capabilityVSAvoidrecovery time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system implements partial rollback recovery by identifying and recovering only the specific failed processing stage rather than rolling back the entire processing pipeline. This selective recovery approach maintains reliability by ensuring error correction while minimizing time loss by avoiding unnecessary re-execution of successful processing stages.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The system performs preliminary checkpointing at strategic points in the processing pipeline, creating recovery points before resource-intensive operations. This preliminary action enables fast recovery by allowing the system to rollback to the most recent checkpoint without re-executing intermediate processing steps, thereby improving reliability while minimizing recovery time overhead.

Inventive Principle:
Principle #10Preliminary action

4Productivity

If load balancing is implemented to distribute workloads across distributed systems, then productivity and resource utilization are improved, but system complexity increases due to monitoring and dynamic allocation mechanisms

Engineering Contradiction:
Improveresource utilizationVSAvoidload management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent implements self-service load balancing where processing nodes autonomously monitor their own load conditions and dynamically adjust their processing rate or transfer workloads to other nodes without centralized control. This self-organizing approach improves productivity through efficient resource utilization while reducing system complexity by eliminating the need for complex centralized monitoring and allocation mechanisms.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS8745434B2Platform for continuous mobile-cloud services
Publication Date: 2014.06.03 MICROSOFT TECHNOLOGY LICENSING LLC
  • US8745434B2 patent drawing
  • US8745434B2 patent drawing
  • US8745434B2 patent drawing

AI summary

Data that is collected and disseminated by mobile devices typically has to be processed, correlated with other data, aggregated, and then transmitted back to the mobile device users before the information becomes stale or otherwise irrelevant. These operations may be performed in a cloud-based solution that manages dataflow. The cloud-based solutions may be scalable and implemented in a fault-tolerant distributed system to support user-facing continuous sensing and processing services in the cloud-computing system. A system may monitor execution of data and shift workloads (i.e., balancing) in response to spatial and temporal load imbalances that occur in a continuous computing environment. A failure recovery protocol may be implemented that uses a checkpoint-based partial rollback recovery mechanism with selective re-execution, which may allow recovery of the continuous processing after an error while avoiding large amounts of downtime and re-execution.