HA Cluster Node Availability Management via Dependency Graph Offloading

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

High Availability (HA) clusters face challenges in managing node availability and decision execution, particularly in scenarios where the president node fails, leading to potential disruptions and complexities in state propagation and recovery processes.

Innovation Solution

A node availability management system with a president node that includes a message queue, a decision engine generating operations with a dependency graph of atomic actions, and an executor that offloads execution to slave nodes, along with a checkpointing mechanism to ensure seamless recovery and state propagation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If the president node processes all decisions sequentially using a standard procedural approach, then decision execution is straightforward and easy to implement, but system productivity and response time deteriorate due to sequential processing limitations

Engineering Contradiction:
Improvedecision execution speedVSAvoidsystem architecture complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments the decision execution process into distinct components: the president node generates operations with dependency graphs, while executor components (both on president and slave nodes) carry out the atomic actions. This segmentation enables parallel execution of independent operations across multiple nodes, dramatically improving productivity without requiring complete redesign of the entire system architecture.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a new dimension to decision execution by implementing a dependency graph model that represents atomic actions and their relationships in a structured format. This graphical representation enables the system to process multiple operations simultaneously by identifying independent paths in the dependency graph, transforming sequential processing into parallel execution across multiple nodes.

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

2Reliability

If state information is propagated to all nodes for checkpointing, then recovery reliability is improved, but network traffic and system overhead increase unnecessarily

Engineering Contradiction:
Improverecovery reliabilityVSAvoidnetwork traffic overhead
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent applies local quality by determining a specific checkpoint domain for each operation based on the dependency graph, which identifies only the slave nodes that are actually affected by that operation. State information is propagated only to these relevant nodes rather than all nodes in the cluster, ensuring recovery reliability for affected operations while minimizing unnecessary network traffic and system overhead.

Inventive Principle:
Principle #3Local quality

3Adaptability or versatility

If the president node maintains centralized control for all decisions, then decision consistency is ensured, but system scalability and parallelism are limited

Engineering Contradiction:
Improvesystem scalabilityVSAvoiddecision consistency
Core Design Contradiction:
Adaptability or versatilityVSLoss of information

Solution Approach 1:

The patent implements preliminary action by having the president node generate complete operations with full dependency graphs before execution, capturing all decision logic and atomic actions in advance. This preliminary formulation of decisions with their complete dependency structures allows slave nodes to execute independently and consistently without requiring continuous centralized control, thereby enabling scalability while maintaining decision consistency.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS7760743B2Effective high availability cluster management and effective state propagation for failure recovery in high availability clusters
Publication Date: 2010.07.20 ORACLE AMERICAN INC
  • US7760743B2 patent drawing
  • US7760743B2 patent drawing
  • US7760743B2 patent drawing

AI summary

A node availability management system includes a president node which includes a message queue to store a message, a decision engine configured to generate an operation based on the message, where said operation includes a plurality of atomic actions arranged in a dependency graph, an executor configured to execute the operation by executing the plurality of atomic instructions in the dependency graph, and a slave node operatively connected to the president node, where the executor offloads the execution of at least one of the plurality of atomic actions to the slave node.