Resource-Usage Notification Framework for Distributed Computing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In distributed computing systems, software applications often exceed resource limits, leading to termination and costly reprocessing, especially in big-data processing and machine learning tasks, due to the lack of proactive resource management.

Innovation Solution

A resource-usage notification framework that monitors resource consumption and generates event notifications to software applications, allowing them to perform mitigation operations, such as storing intermediate results or migrating to nodes with higher resource limits, to prevent exceeding predefined resource limits.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If software applications are allowed to use resources freely in distributed computing systems, then productivity and flexibility are improved, but resource consumption exceeds limits causing termination and data loss

Engineering Contradiction:
Improvecomputational throughputVSAvoidapplication continuity
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system performs preliminary actions by notifying applications before they exceed resource limits. The notification framework detects when resource usage approaches predefined thresholds and sends warnings to applications in advance, allowing them to take corrective actions such as saving intermediate results or reducing resource consumption before termination occurs.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system implements feedback mechanisms by continuously monitoring resource usage and providing real-time notifications to applications. The notification framework establishes a feedback loop where resource consumption data is fed back to applications through warnings and alerts, enabling them to adjust their behavior dynamically to maintain both productivity and reliability.

Inventive Principle:
Principle #23Feedback

2Productivity

If resource limits are enforced strictly to prevent overconsumption, then resource utilization is optimized, but applications are terminated causing computational overhead and data loss

Engineering Contradiction:
Improveresource utilization efficiencyVSAvoidreprocessing time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The notification framework enables preliminary actions by warning applications before they hit resource limits. Applications can save intermediate results, checkpoint their state, or migrate to other nodes in advance, avoiding termination and the associated time loss from reprocessing.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system provides beforehand cushioning by giving applications a buffer zone between current resource usage and hard limits. Notification thresholds are set below maximum resource capacity, creating a cushion that allows applications to operate safely without triggering premature termination while still preventing resource exhaustion.

Inventive Principle:
Principle #11Beforehand cushioning (Prior cushioning)

3Reliability

If monitoring and notification systems are implemented to prevent resource limit violations, then application reliability is improved, but system complexity increases

Engineering Contradiction:
Improveapplication continuityVSAvoidmonitoring framework complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The notification framework acts as an intermediary layer between resource management infrastructure and applications. It mediates by translating complex resource monitoring data into simple, actionable notifications for applications, reducing the complexity burden on both sides while maintaining reliability.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system implements self-service by enabling applications to autonomously respond to notifications based on their own logic and requirements. Applications can independently decide whether to save data, reduce resource usage, or migrate, without requiring complex centralized control, thereby improving reliability while keeping the monitoring framework relatively simple.

Inventive Principle:
Principle #25Self-service

4Productivity

If applications are terminated when exceeding resource limits, then resource allocation fairness is improved, but computational work is lost requiring costly reprocessing

Engineering Contradiction:
Improveresource allocation efficiencyVSAvoidcomputational work
Core Design Contradiction:
ProductivityVSLoss of substance

Solution Approach 1:

The notification framework enables preliminary actions by alerting applications before resource limit violations occur. Applications can save intermediate results, checkpoint processing state, or migrate to other nodes in advance, preserving computational work and avoiding the need for costly reprocessing while maintaining fair resource allocation.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system converts the potentially harmful event of resource limit violation into a beneficial opportunity for data preservation. By notifying applications in advance, the framework transforms what would be a termination-triggering event into a chance for applications to save their work and continue processing, thereby converting resource constraints into productivity benefits.

Inventive Principle:
Principle #22Blessing in disguise (Convert harm into benefit)

Data Source

PatentUS11593165B2Resource-usage notification framework in a distributed computing environment
Publication Date: 2023.02.28 RED HAT INC
  • US11593165B2 patent drawing
  • US11593165B2 patent drawing
  • US11593165B2 patent drawing

AI summary

A resource-usage notification framework can be implemented for distributed computing environments. For example, a system can determine the resource usage of a software application in a distributed computing environment. The system can determine if the resource usage is within a predefined range of a predefined resource-consumption limit. If so, the system can generate an event notification and transmit the event notification to the software application. The software application can receive the event notification and perform a mitigation operation in response. The mitigation operation can be configured to prevent the resource usage from exceeding the predefined resource-consumption limit or to mitigate an impact of the resource usage exceeding the predefined resource-consumption limit.