Distributed Configuration Management via Asynchronous Task Segmentation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In distributed computing systems, configuration changes are slow and prone to errors when nodes are non-responsive, and sequential changes require manual intervention and waiting for previous changes to complete.

Innovation Solution

A configuration element that receives commands, subdivides changes into tasks, and performs them asynchronously across nodes, allowing immediate acknowledgement and parallel execution without waiting for previous changes to finish, while skipping updates from non-responsive nodes and synchronizing with operational ones.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If configuration changes are made manually by operators, then configuration changes can be made to distributed systems, but the process is slow and error-prone

Engineering Contradiction:
Improveconfiguration change reliabilityVSAvoidconfiguration change speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system performs self-service configuration changes through automated agents that deploy and execute configuration tasks across distributed nodes without human intervention. The configuration manager automatically monitors node status, assigns tasks to available nodes, and handles failures, eliminating the need for manual operator intervention while ensuring consistent and reliable configuration changes.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent replaces the mechanical manual process of configuration changes with an automated electronic system. Instead of operators physically accessing and modifying node configurations, the system uses software agents and automated task management to substitute the manual mechanical process with an electronic automation system that is both faster and more reliable.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

2Stability of the object's composition

If configuration changes wait for non-responsive nodes, then all nodes remain consistent, but configuration changes are delayed significantly

Engineering Contradiction:
Improveconfiguration consistencyVSAvoidconfiguration change time
Core Design Contradiction:
Stability of the object's compositionVSLoss of time

Solution Approach 1:

The system applies partial action by allowing configuration changes to proceed with only the subset of nodes that are responsive and available. Instead of waiting for all nodes including non-responsive ones, the configuration manager executes tasks on available nodes and marks non-responsive nodes for later recovery, enabling configuration changes to complete in a fraction of the time while maintaining eventual consistency.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The system performs preliminary actions by assigning configuration tasks to nodes in advance based on their current status. Nodes that are already responsive receive and execute tasks immediately, while non-responsive nodes are marked for recovery. This preliminary assignment allows the configuration process to begin without waiting for all nodes, and non-responsive nodes are handled separately through recovery mechanisms.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If multiple configuration changes are made sequentially, then each change can be completed properly, but the total time required increases

Engineering Contradiction:
Improveconfiguration change completenessVSAvoidtotal configuration time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent segments configuration changes into independent, atomic tasks that can be executed in parallel across multiple nodes. Each configuration change is divided into discrete tasklets that can be assigned to different nodes simultaneously. This segmentation allows multiple configuration changes to progress concurrently rather than sequentially, reducing total configuration time while maintaining completeness through task tracking and verification.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system maintains continuity of useful action by allowing multiple configuration changes to overlap and execute simultaneously across the distributed system. Instead of completing one configuration change entirely before starting the next, the configuration manager continuously assigns and executes tasks from multiple configuration changes in parallel, maximizing system utilization and reducing total configuration time while ensuring each change completes properly.

Inventive Principle:
Principle #20Continuity of useful action

4Reliability

If configuration changes require manual intervention for non-responsive nodes, then nodes can be brought back into the system, but the process becomes slower and more error-prone

Engineering Contradiction:
Improvenode recovery reliabilityVSAvoidnode recovery effort
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The system implements self-service node recovery where automated agents monitor node responsiveness and automatically reassign configuration tasks when nodes become non-responsive. When nodes recover, the configuration manager automatically detects their return and assigns pending tasks without requiring manual operator intervention. This automated self-service approach reduces operational effort while maintaining reliable node recovery through consistent task reassignment and verification.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS9847906B1Distributed dynamic system configuration
Publication Date: 2017.12.19 SCALE COMPUTING INC
  • US9847906B1 patent drawing
  • US9847906B1 patent drawing

AI summary

Reliably making configuration changes to distributed systems, including receiving commands for multiple configuration changes, subdividing configuration changes into separate tasks, and performing those tasks at each node. A configuration element receives sets of configuration change commands, acknowledging them so the user need not wait before issuing additional commands. Tasks are determined, each including consistent changes to system configuration, and each including single-device tasklets. Each particular tasklet might be assigned to a particular single device, or to any single device in the system. Next tasks are performed when tasklets are complete. If tasklets are not timely performed due to nodes which are relatively unresponsive, those nodes are marked “failed.” When a failed node returns to responsiveness, it marks itself “recovering.” When a recovering node catches up, it marks itself “operational.” Updates by failed or recovering nodes are skipped while synchronizing with operational nodes.