Recovery Graph for Initialization Failure Handling

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In large-scale distributed systems, initialization is complex due to interdependencies between components, leading to prolonged initialization times and challenges in recovering from failures, with existing fault-tolerant techniques like rollback recovery being resource-intensive and inefficient.

Innovation Solution

A method involving the generation of a recovery graph based on interdependency types and execution states to identify tasks for re-execution, allowing for dynamic assessment of when to initiate recovery, thereby optimizing initialization and recovery processes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If rollback recovery with frequent periodic checkpointing is used to recover from initialization failures, then reliability is improved, but device complexity and loss of time increase due to wasted resources and system interruptions

Engineering Contradiction:
Improverecovery from initialization failuresVSAvoidinitialization time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent segments the initialization process into discrete tasks with defined dependencies, represented as nodes in a graph structure. This allows selective identification and re-execution of only those tasks affected by failures, rather than restarting the entire initialization sequence. The segmentation enables granular recovery operations that minimize time loss while maintaining reliability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary actions by pre-establishing the task dependency graph and pre-identifying critical tasks before failures occur. When failures happen during initialization, the system can immediately consult the pre-built graph structure to determine which specific tasks need re-execution, avoiding the need for frequent checkpointing and enabling faster recovery without sacrificing reliability.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If initialization tasks are executed in strict sequential order to satisfy interdependencies, then reliability is improved, but productivity decreases due to prolonged initialization times

Engineering Contradiction:
Improvesatisfaction of interdependenciesVSAvoidinitialization speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent introduces dynamic task scheduling based on the dependency graph, allowing the initialization system to adaptively determine execution order and parallelization opportunities. Tasks are dynamically assigned to available resources while respecting dependency constraints, enabling the system to maximize productivity without compromising the satisfaction of interdependencies through intelligent schedule adjustment.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent adds a temporal dimension to task execution by utilizing parallel processing across multiple processors. The dependency graph enables identification of tasks that can execute simultaneously in different time-slices or on different processors, transforming the execution model from strictly sequential to concurrent while maintaining dependency integrity through coordinated scheduling.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

3Reliability

If the entire initialization procedure is restarted from the beginning upon failure, then reliability is improved, but loss of time increases due to re-execution of already completed tasks

Engineering Contradiction:
Improverecovery from initialization failuresVSAvoidre-initialization time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent extracts and isolates only the failed task and its dependent tasks from the complete initialization sequence. By using the dependency graph to trace backward from the failed task to identify the minimal set of tasks that must be re-executed, the system takes out only the necessary portion of the initialization process for recovery, avoiding redundant re-execution of unrelated tasks and minimizing time loss while ensuring reliability.

Inventive Principle:
Principle #2Taking out (Extraction)

4Reliability

If fault-free components are restarted along with failed components, then reliability is improved, but productivity decreases due to unnecessary re-execution of successful tasks

Engineering Contradiction:
Improvesystem consistency after failureVSAvoidrecovery speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent enables the system to skip over fault-free components and tasks that do not depend on failed tasks. By analyzing the dependency graph to identify which tasks are actually affected by the failure, the system rushes through the recovery process by executing only the necessary tasks, maintaining system consistency through proper dependency management while maximizing recovery speed by eliminating unnecessary re-executions.

Inventive Principle:
Principle #21Skipping (Rushing through)

Data Source

PatentUS7707451B2Methods and devices for recovering from initialization failures
Publication Date: 2010.04.27 NOKIA OF AMERICA CORP
  • US7707451B2 patent drawing
  • US7707451B2 patent drawing
  • US7707451B2 patent drawing

AI summary

The time it takes to recover from a system initialization failure may be reduced by determining whether to enable a recovery process immediately, or defer such a process. Sometimes it is desirable to defer a recovery process until certain interdependencies between system components are satisfied.