Tag-Based Deployment for Overlapping Host Sets

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Manual determination of software upgrades for computing systems is cumbersome and error-prone, especially in large and complex deployments involving multiple upgrades and hosts, due to the need for considering various host characteristics such as architecture, operating system, and geographic region.

Innovation Solution

Implementing a tag-based deployment system where upgrade packages and hosts are associated with tags that form hierarchies, allowing for automated matching and selection of appropriate packages based on host tags, thereby simplifying the deployment process and reducing errors.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If manual determination is used for selecting software upgrades, then flexibility in decision-making is maintained, but the process becomes cumbersome and error-prone in large-scale deployments

Engineering Contradiction:
Improveaccuracy of upgrade selectionVSAvoidcomplexity of deployment process
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The system enables self-service automation where the deployment service automatically matches upgrade packages to target hosts by comparing package tags with host tags, eliminating the need for manual determination while ensuring accurate and consistent upgrade selection across large-scale deployments

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent transforms the upgrade selection process from manual parameter evaluation to automated tag-based matching, where hosts and packages are characterized by hierarchical tags (e.g., operating system version, architecture, region) that enable systematic and error-free comparison and selection

Inventive Principle:
Principle #35Parameter changes

2Productivity

If automated tag-based matching is implemented, then deployment efficiency is improved, but system complexity increases due to hierarchical tag structures

Engineering Contradiction:
Improvedeployment speedVSAvoidcomplexity of tag hierarchy system
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments the upgrade selection criteria into discrete hierarchical tags (e.g., distribution tag, version tag, architecture tag) that can be independently managed and combined, allowing efficient automated matching while organizing complexity into manageable, modular components

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The tag hierarchy system serves multiple functions: it characterizes hosts and packages, enables automated matching, supports hierarchical inheritance (parent-child tag relationships), and provides a universal framework that can accommodate various upgrade scenarios across different computing environments

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

3Measurement precision

If comprehensive host characteristics are considered for upgrade selection, then accuracy of matching is improved, but the determination process becomes more complex

Engineering Contradiction:
Improveprecision of host-package matchingVSAvoidcomplexity of matching process
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent introduces tags as intermediary elements that mediate between host characteristics and package requirements, transforming complex multi-dimensional matching into simplified tag-comparison operations where the deployment service matches package tags against host tags through hierarchical inheritance rules

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS9110756B1Tag-based deployment to overlapping host sets
Publication Date: 2015.08.18 AMAZON TECH INC
  • US9110756B1 patent drawing
  • US9110756B1 patent drawing
  • US9110756B1 patent drawing

AI summary

Methods and systems for deploying software packages are provided. In an example, a deployment service allows users to deploy software packages to target sets of computing devices where the target sets may overlap. The deployment service prevents software packages from being deployed to target sets that would conflict with a software package deployed to at least some of the target set as a result of the target set overlapping with another set.