Configuration Parameter Clustering for Software Drift Detection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In software configuration management, the complexity of tracking and controlling changes across numerous software deployments is exacerbated by the large number of possible configuration settings, making it difficult to identify meaningful differences and issues related to configuration drift.

Innovation Solution

A system is developed to select a subset of configuration parameters with moderate cardinality and assign weights to them, allowing for clustering of software resources based on these parameters, which facilitates visualization and management of configuration differences.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If all configuration parameters are compared to track software resource changes, then comprehensive configuration control is achieved, but system complexity and difficulty of identification increase significantly

Engineering Contradiction:
Improveconfiguration controlVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent extracts and identifies a subset of critical configuration parameters from the complete parameter set. By focusing only on parameters that have actual variation across software resources and impact configuration drift, the system reduces complexity while maintaining effective configuration control. The extraction process filters out redundant parameters with single values or no variations.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent segments the configuration parameters into different categories based on their cardinality and importance. Parameters are divided into those with high cardinality (many possible values), moderate cardinality, and low cardinality. This segmentation allows the system to apply different analysis strategies to different parameter groups, reducing overall system complexity while maintaining comprehensive monitoring.

Inventive Principle:
Principle #1Segmentation

2Reliability

If all configuration parameters are analyzed to identify differences, then complete configuration drift detection is achieved, but identification precision and meaningfulness decrease due to noise from irrelevant parameters

Engineering Contradiction:
Improveconfiguration drift detectionVSAvoididentification precision
Core Design Contradiction:
ReliabilityVSMeasurement precision

Solution Approach 1:

The patent applies local quality by assigning different weights and analysis depths to different configuration parameters based on their local characteristics. Parameters with moderate cardinality and actual variations receive higher priority and more detailed analysis, while parameters with single values or minimal variations receive less attention. This localized focus improves identification precision by highlighting meaningful differences.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent dynamically adjusts the analysis parameters based on the actual data characteristics. The system identifies parameters whose values actually change across software resources and focuses analysis on those parameters. By changing the analysis focus from static comprehensive monitoring to dynamic variation-based monitoring, the system improves identification precision while reducing noise from irrelevant parameters.

Inventive Principle:
Principle #35Parameter changes

3Reliability

If manual creation of gold images is used to track configuration changes, then configuration control is achieved, but time consumption and operational complexity increase

Engineering Contradiction:
Improveconfiguration controlVSAvoidtime consumption
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent implements self-service by enabling the system to automatically identify critical parameters, perform clustering analysis, and detect configuration drift without requiring manual creation of gold images. The system autonomously selects parameters based on their cardinality and variation patterns, then uses clustering algorithms to identify configuration groups and detect drift automatically, significantly reducing time consumption and operational complexity.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent replaces the manual mechanical process of creating and maintaining gold images with an automated computational system. Instead of manually selecting parameters and creating reference configurations, the system uses algorithmic parameter selection based on cardinality analysis and automated clustering algorithms to perform configuration tracking, eliminating the time-consuming manual operations while maintaining configuration control reliability.

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

4Adaptability or versatility

If configuration parameters with high cardinality are included in clustering, then comprehensive coverage is achieved, but computational complexity and processing time increase

Engineering Contradiction:
Improveconfiguration coverageVSAvoidcomputational complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent applies dynamics by adaptively adjusting the parameter selection based on the specific dataset and configuration patterns observed. The system dynamically determines which parameters to include in clustering based on their actual variation patterns and cardinality characteristics. This dynamic approach allows comprehensive coverage of relevant configuration space while reducing computational complexity by excluding parameters that don't contribute meaningfully to configuration differentiation.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS10789065B2Method for automatically selecting configuration clustering parameters
Publication Date: 2020.09.29 ORACLE INT CORP
  • US10789065B2 patent drawing
  • US10789065B2 patent drawing
  • US10789065B2 patent drawing

AI summary

Techniques for analyzing, understanding, and remediating differences in configurations among many software resources are described herein. Machine learning processes are applied to determine a small feature set of parameters from among the complete set of parameters configured for each software resource. The feature set of parameters is selected to optimally cluster configuration instances for each of the software resources. Once clustered based on the values of the feature set of parameters, a graph is generated for each cluster of configuration instances that depicts the differences among the configuration instances within the cluster. An interactive visualization tool renders the graph in a user interface, and a management tool allows changes to the graph and changes to the configuration of one or more software resources.