Non-periodic Checkpointing for Distributed Work Retry

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Distributed computer systems face inefficiencies due to node failures during task execution, leading to delays and resource wastage, as they often require retrying the entire task when one node fails to return results in a timely manner.

Innovation Solution

A distributed computing method that divides work assignments into units and redistributes failed units from a failed node to another node, allowing for partial result retrieval and reassignment, thereby minimizing delays and resource wastage.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If the entire computing task is retried when one node fails, then the system maintains simplicity in failure handling, but the productivity and resource utilization deteriorate due to delays and wasted computational resources

Engineering Contradiction:
Improvefailure handling simplicityVSAvoidtask completion efficiency
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The patent segments the computing task into independent work units distributed across multiple nodes. When a node fails, only the affected work units need to be reassigned rather than retrying the entire task. This segmentation enables partial failure isolation and maintains overall system productivity while simplifying failure management through targeted recovery operations.

Inventive Principle:
Principle #1Segmentation

2Ease of operation

If the system waits indefinitely for node responses, then the system maintains simplicity in error handling, but the loss of time increases due to indefinite waiting periods

Engineering Contradiction:
Improveerror handling simplicityVSAvoidwaiting time for node responses
Core Design Contradiction:
Ease of operationVSLoss of time

Solution Approach 1:

The patent implements feedback mechanisms where nodes send acknowledgment signals to the coordinator about their work unit status. The coordinator monitors these feedback signals and can detect when a node has failed to respond within expected timeframes. This feedback loop enables timely failure detection and triggers automatic work unit reassignment, eliminating indefinite waiting while maintaining simple error handling through automated responses.

Inventive Principle:
Principle #23Feedback

3Reliability

If work units are continuously monitored and reassigned upon failure, then the reliability of task completion improves, but the device complexity increases due to additional monitoring and coordination mechanisms

Engineering Contradiction:
Improvetask completion reliabilityVSAvoidmonitoring and coordination complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent implements self-service failure detection where worker nodes automatically monitor their own execution status and send completion or failure signals to the coordinator without external intervention. The coordinator automatically tracks work unit status and triggers reassignment when failures are detected. This self-service approach improves reliability through continuous monitoring while minimizing complexity by eliminating the need for complex external monitoring systems and manual failure handling procedures.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS9672073B2Non-periodic check-pointing for fine granular retry of work in a distributed computing environment
Publication Date: 2017.06.06 SYBASE INC
  • US9672073B2 patent drawing
  • US9672073B2 patent drawing
  • US9672073B2 patent drawing

AI summary

Distributing work in a distributed computing environment that includes multiple nodes. An individual node can receive a work assignment, which can then be divided into a plurality of work units. A first work unit can then be distributed to a first worker node. At least a portion of the first work unit can be re-distributed to a second worker node in response to determining that the first worker node has experienced a failure condition with respect to the first work unit.