Graph-Based Service Failure Analysis for Distributed Systems

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In distributed and virtualized computing systems, the scarcity or unavailability of shared resources can lead to system slowdowns and outages, with critical resources being particularly vulnerable due to their interconnected nature, causing cascading failures that affect a large portion of the system.

Innovation Solution

The use of graph representations and equivalent structures to analyze and manage resources, identifying dependencies and vulnerabilities, and applying optimization techniques such as metaheuristics and simulation methods to enhance resource availability and redundancy, thereby mitigating the risk of failures and improving system stability.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If shared computer system resources are highly interconnected to improve system integration, then system functionality is enhanced, but the loss of a single resource can cause cascading failures affecting a large portion of the system

Engineering Contradiction:
Improvesystem integrationVSAvoidsystem stability
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent segments the highly interconnected computing system into isolated failure domains using virtualization technologies. By creating virtual machines and containers that are logically separated, the failure of one segment does not propagate to other segments, thus maintaining system integration while preventing cascading failures.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces intermediary layers (virtualization software, service meshes, and orchestration platforms) between directly connected resources. These intermediaries act as buffers that can detect, contain, and manage failures, preventing them from spreading through the interconnected system while preserving overall system functionality.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If critical resources are concentrated to optimize resource utilization, then resource efficiency is improved, but the scarcity of these resources makes the system more vulnerable to slowdowns and outages

Engineering Contradiction:
Improveresource efficiencyVSAvoidsystem availability
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent implements universal resource pools where critical resources (compute, storage, networking) are virtualized and can be dynamically allocated to multiple services and applications. This allows the same physical resources to serve multiple functions and users, maintaining high resource efficiency while providing redundancy and fault isolation.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The patent dynamically changes resource allocation parameters based on system conditions, service priorities, and failure states. Through automated orchestration, resources are reallocated in real-time to maintain system availability during failures while optimizing utilization during normal operation, effectively decoupling efficiency from vulnerability.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS10616073B1Graph-based service failure analysis
Publication Date: 2020.04.07 AMAZON TECH INC
  • US10616073B1 patent drawing
  • US10616073B1 patent drawing
  • US10616073B1 patent drawing

AI summary

Techniques for representing, analyzing, altering and reporting the results of the analysis and/or alteration of a system with a plurality of system elements and one or more relationships between those system entities are described herein. A representation of the system is created with nodes that correspond to the system entities and edges that correspond to relationships between pairs of system entities. A simulation is performed on the representation to obtain information about system failures, the representation is altered, and a second simulation is performed to obtain information about system failures in the new representation. Results are reported about the results before and after the alterations.