ML-Based Computing Architecture Recommendation for Distributed Systems

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The increasing complexity of distributed software systems across multiple computing nodes, especially with containerization, makes it difficult to define and verify optimal computing architectures, leading to challenges in testing and deployment, including performance faults and resource allocation.

Innovation Solution

A machine learning model is trained using historical testing data from multiple software systems to recommend optimal computing architectures, which can be used during deployment or to dynamically reconfigure existing systems, considering various resources and configurations, including memory, I/O bandwidth, network, and processor resources.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If software systems are distributed across multiple computing nodes with containerization, then system functionality and scalability are improved, but testing complexity and verification difficulty increase

Engineering Contradiction:
Improvesystem scalabilityVSAvoidtesting complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent introduces an intermediary system that automatically generates, executes, and analyzes test cases across distributed computing nodes. This intermediary testing framework mediates between the complex distributed system architecture and the verification process, automatically handling the orchestration of tests across containers and nodes without requiring manual intervention for each test scenario.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent applies preliminary action by performing comprehensive automated testing and verification before system deployment. Test cases are generated and executed in advance to identify potential failures, and the system uses historical test data to predict and prevent failures before they occur in production environments.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If computing architecture is optimized for specific software systems, then system performance is improved, but the difficulty of defining and verifying optimal architecture increases

Engineering Contradiction:
Improvesystem performanceVSAvoidarchitecture verification difficulty
Core Design Contradiction:
ProductivityVSDifficulty of detecting and measuring

Solution Approach 1:

The patent implements feedback mechanisms that automatically monitor system performance metrics and compare them against expected benchmarks. The system collects performance data from deployed systems, analyzes it to identify deviations, and uses this feedback to refine architecture recommendations and generate corrective actions, creating a continuous improvement loop.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent replaces manual architecture verification processes with automated machine learning models and performance analysis systems. These automated systems objectively measure and evaluate architecture effectiveness, substituting subjective human judgment with data-driven automated assessment.

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

3Reliability

If historical testing data is collected and analyzed, then failure prediction accuracy is improved, but data processing and model training time increase

Engineering Contradiction:
Improvefailure prediction accuracyVSAvoiddata processing time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent applies preliminary action by pre-processing and organizing historical testing data in advance, creating structured datasets that are ready for rapid analysis. Test results, system configurations, and performance metrics are collected and standardized beforehand, reducing the time required for actual failure prediction when the models are deployed.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent uses copying by creating simplified representations or proxies of complex historical data sets. Instead of processing all raw historical testing data, the system uses sampled subsets, aggregated statistics, or compressed data representations that capture the essential patterns while requiring significantly less processing time.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS10810502B2Computing architecture deployment configuration recommendation using machine learning
Publication Date: 2020.10.20 SAP SE
  • US10810502B2 patent drawing
  • US10810502B2 patent drawing
  • US10810502B2 patent drawing

AI summary

Data is received that characterizes a software system. Thereafter, using at least one machine learning model trained using historical testing data from a plurality of training software systems, a recommended computing architecture is generated for the software system. Data can then be provided that characterizes the software system. Related apparatus, systems, techniques and articles are also described.