Cluster Node Update Coordination for Distributed Data Systems

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional scheduling approaches for updating nodes in distributed systems often require long maintenance windows, leading to disruptions in access to distributed data, as they cannot efficiently update nodes without affecting data accessibility.

Innovation Solution

A system and method that allow for updating node components while they are disabled from providing data, by predicting which nodes can be updated without impacting access to related data stored in peer nodes, using a cluster-aware update component to select nodes for update and an update interface component to communicate the updates.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If conventional scheduling approaches are used to update nodes, then nodes can be updated with components, but long maintenance windows are required causing disruption to data access

Engineering Contradiction:
Improvenode update capabilityVSAvoiddata unavailability duration
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system segments the distributed data storage across multiple peer nodes into neighborhoods, where data is distributed such that not all nodes need to be unavailable simultaneously. This allows updating individual nodes or small groups while maintaining data accessibility through other nodes in the network.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system performs preliminary analysis to predict whether a node can be updated without affecting data accessibility. By evaluating data dependencies and neighborhood configurations before updates, the system identifies safe update opportunities that minimize data unavailability while ensuring update reliability.

Inventive Principle:
Principle #10Preliminary action

2Ease of manufacture

If nodes are disabled during updates, then component updates can be performed, but access to distributed data is affected

Engineering Contradiction:
Improvecomponent update capabilityVSAvoiddata access continuity
Core Design Contradiction:
Ease of manufactureVSEase of operation

Solution Approach 1:

The system dynamically determines which nodes can be disabled for updates based on real-time data dependency analysis and neighborhood configuration. This dynamic approach allows the system to adapt update scheduling to current system state, enabling component updates while maintaining data access through available nodes.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system uses an updating device as an intermediary that coordinates between nodes requiring updates and peer nodes that can provide data access. This intermediary analyzes dependencies and orchestrates updates to ensure data accessibility is maintained through alternative nodes while component updates are performed.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Productivity

If all nodes are updated simultaneously, then system-wide updates are achieved, but complete data unavailability occurs

Engineering Contradiction:
Improveupdate throughputVSAvoidsystem unavailability
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The system implements periodic, staggered updates across nodes rather than simultaneous updates. By updating nodes in sequences based on neighborhood relationships and data dependencies, the system achieves system-wide updates over time while ensuring that at any given moment, sufficient nodes remain available to maintain data access.

Inventive Principle:
Principle #19Periodic action

Data Source

PatentUS11599418B2Maintaining components of networked nodes with distributed data dependencies
Publication Date: 2023.03.07 EMC IP HLDG CO LLC
  • US11599418B2 patent drawing
  • US11599418B2 patent drawing
  • US11599418B2 patent drawing

AI summary

Methods, systems and computer program products for maintaining components of networked nodes with distributed data dependencies are described. For example, in accordance with one or more embodiments, a method can comprise identifying, by a device comprising a processor, in a group of dependent nodes of a cluster of nodes, a first portion of the dependent nodes for which an update is implicated. The method can further comprise selecting, by the device, from the first portion, a second portion of the dependent nodes that are predicted to be able to be updated with the update without affecting access to data of the group of dependent nodes. Further, the method can comprise communicating, by the device, the update to the second portion of the dependent nodes.