Cloud Payload Deployment via Hash Comparison

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current techniques for deploying services and updates to cloud servers are time-consuming and often result in inaccurate updates, leading to a loss of agility in delivering features efficiently, as they involve deploying all new versions and relying on source code changes.

Innovation Solution

Deploying only changed payloads to cloud servers by generating hash values for files on sample servers, creating a master hash value for each payload, and comparing it with previous versions stored in a hash database to identify and deploy only updated components during runtime.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If all new versions of services are deployed to servers, then complete service updates are achieved, but deployment time increases and agility is lost

Engineering Contradiction:
Improveservice update completenessVSAvoiddeployment time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The deployment process is segmented by dividing services into multiple payloads, each representing a discrete unit of functionality. This allows selective deployment of individual payloads rather than deploying entire service versions, enabling parallel processing and reducing overall deployment time while maintaining update completeness.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system performs partial action by deploying only the specific payloads that contain changed functionality rather than all service versions. The hash-based change detection identifies which payloads require deployment, allowing the system to perform exactly the necessary work without redundant deployments of unchanged components.

Inventive Principle:
Principle #16Partial or excessive action

2Measurement precision

If source code changes are monitored for service updates, then update accuracy is maintained, but the process becomes complex and time-consuming

Engineering Contradiction:
Improveupdate accuracyVSAvoiddeployment process complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The complex source code change monitoring process is replaced with a simpler hash-based file comparison system. Instead of analyzing source code changes, the system generates hash values for payload files and compares these hashes to determine if updates are needed, significantly reducing computational complexity while maintaining accurate change detection.

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

Solution Approach 2:

The system changes the parameter used for detecting service updates from source code content analysis to file hash value comparison. This parameter transformation simplifies the detection process while preserving the ability to accurately identify changed services, as hash values provide a unique fingerprint for each file version.

Inventive Principle:
Principle #35Parameter changes

3Productivity

If source code-based service updates are used, then service changes are tracked, but deployment accuracy decreases leading to incorrect updates

Engineering Contradiction:
Improveservice update trackingVSAvoiddeployment accuracy
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system creates hash value copies of payload files as a reliable identifier for tracking service changes. These hash copies serve as immutable references that accurately represent the state of each payload, enabling precise tracking of service updates without the errors associated with source code-based methods.

Inventive Principle:
Principle #26Copying

4Reliability

If comprehensive service monitoring is implemented, then service issues are detected, but processor load and memory usage increase

Engineering Contradiction:
Improveservice issue detectionVSAvoidprocessor load
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The system extracts only the essential information needed for change detection by computing hash values from payload files. This extraction process captures the critical state information of each service component without requiring comprehensive monitoring of all service attributes, significantly reducing processor load and memory consumption while maintaining effective change detection capability.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS10635426B2Runtime deployment of payloads in a cloud service
Publication Date: 2020.04.28 MICROSOFT TECHNOLOGY LICENSING LLC
  • US10635426B2 patent drawing
  • US10635426B2 patent drawing
  • US10635426B2 patent drawing

AI summary

Aspects of the present disclosure relate to systems and methods for deploying payloads in a cloud service. In one aspect, one or more payloads may be deployed to a plurality of sample servers. Each of the one or more payloads may include a plurality of files. A hash value may be generated for each file of the plurality of files. A master hash value may be generated for each payload from the generated hashes for each file of the plurality of files. It may be determined whether the one or more payloads have changed since a previous deployment of the one or more payloads. When it is determined that at least one payload of the one or more payloads has changed, the at least one changed payload may be deployed to a plurality of data servers.