Service Maintenance Window Identification via Resource Clustering

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional systems lack the ability to programmatically determine optimal change windows for maintenance and updates across multiple services sharing resources, leading to unintended impacts on customers and increased complexity due to limited visibility and shared resource utilization in microservice architectures.

Innovation Solution

A computer-implemented method that queries time series performance data to identify low resource consumption time slots, annotates them with service tags, creates clusters using dynamic clustering, and generates a common change window by eliminating duplicate hosts, thereby recommending the least impactful time for maintenance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If conventional random selection of change window is used, then simplicity of scheduling is maintained, but service availability and customer impact are worsened

Engineering Contradiction:
Improvesimplicity of schedulingVSAvoidservice availability
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The system performs preliminary analysis of historical service usage patterns, resource consumption data, and customer behavior before selecting a change window. This advance preparation enables identification of optimal time slots that minimize customer impact while maintaining scheduling simplicity.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system continuously collects feedback from service monitoring data, customer usage patterns, and resource utilization metrics. This feedback loop enables dynamic optimization of change window selection, improving service availability while maintaining operational simplicity through automated decision-making.

Inventive Principle:
Principle #23Feedback

2Loss of time

If change window is selected without historical behavior analysis, then decision-making speed is maintained, but maintenance precision and service quality are worsened

Engineering Contradiction:
Improvedecision-making speedVSAvoidmaintenance precision
Core Design Contradiction:
Loss of timeVSManufacturing precision

Solution Approach 1:

Historical service behavior data, resource consumption patterns, and customer usage metrics are pre-analyzed and stored in accessible formats. This preliminary processing enables rapid retrieval and analysis during change window selection, maintaining decision-making speed while improving maintenance precision through data-driven insights.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

Manual analysis and decision-making processes are replaced with automated computational systems that analyze historical data patterns. This substitution enables both rapid decision-making and high precision by leveraging computational power to process complex historical behavior data instantaneously.

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

3Device complexity

If administrator has limited visibility into service components, then system complexity is reduced, but measurement precision and impact assessment are worsened

Engineering Contradiction:
Improvesystem complexityVSAvoidimpact assessment
Core Design Contradiction:
Device complexityVSMeasurement precision

Solution Approach 1:

Automated monitoring agents and data collection intermediaries are deployed across service components to gather detailed usage and resource consumption data. These intermediaries provide comprehensive measurement capabilities without requiring administrators to directly access or understand complex system internals, maintaining low perceived complexity while achieving high measurement precision.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

Manual inspection and assessment methods are replaced with automated computational analysis systems. These systems precisely measure resource consumption patterns, service usage metrics, and potential impact of changes without requiring administrator expertise in system internals, thereby maintaining simplicity while improving measurement accuracy.

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

4Productivity

If shared resources are used across multiple services, then resource utilization efficiency is improved, but identification of optimal change window becomes more difficult

Engineering Contradiction:
Improveresource utilization efficiencyVSAvoidchange window identification complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system merges data from multiple services that share common resources into unified analysis models. By combining usage patterns, resource consumption data, and service dependencies across all affected services, the system identifies change windows that optimize resource utilization while minimizing cumulative impact on all services simultaneously.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The change window identification system is designed to handle multiple services and shared resources universally. It performs multi-functionality by analyzing diverse service types, resource configurations, and usage patterns through a single integrated approach, thereby managing complexity while maintaining efficient resource utilization across the entire service portfolio.

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

Data Source

PatentUS10972353B1Identifying change windows for performing maintenance on a service
Publication Date: 2021.04.06 BMC HELIX INC
  • US10972353B1 patent drawing
  • US10972353B1 patent drawing
  • US10972353B1 patent drawing

AI summary

Systems and techniques for identifying a common change window for one or more services implemented on one or more hosts include querying time series performance data for each host of a service to identify time slots of low resource consumption on the host, annotating the time slots with service tags, where the service tags identify host information and service information, creating groups of time slots using the service tags, using dynamic clustering to create clusters of hosts using the groups of time slots, and generating at least one common change window by eliminating duplicate hosts from the clusters of the hosts.