Hierarchical Task Status Structure for Distributed Progress Monitoring

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Monitoring the progress of lengthy tasks executed by multiple compute resources in storage systems is time-consuming, especially when a large number of resources are involved, making it inefficient to track and report the task's status effectively.

Innovation Solution

A distributed task progress reporting system that uses a shared task status structure with hierarchical levels, allowing compute entities to update their progress and aggregate it, enabling efficient monitoring by only reading a portion of the structure, reducing the need for frequent updates and minimizing the load on the system.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If progress monitoring is performed by reading from all compute entities, then complete task progress information is obtained, but the time required to determine progress increases significantly

Engineering Contradiction:
Improvetask progress information completenessVSAvoidtime to determine progress
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent divides the compute entities into multiple groups and creates a hierarchical structure where each group has an aggregate progress entry. This segmentation allows the monitoring entity to read only from selected group aggregate entries rather than individual compute entities, reducing the time required to determine overall task progress while maintaining measurement accuracy through the aggregate representation.

Inventive Principle:
Principle #1Segmentation

2Reliability

If frequent progress updates are performed by all compute entities, then real-time task status is maintained, but the system load increases

Engineering Contradiction:
Improvetask status accuracyVSAvoidsystem load
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent extracts the progress reporting function from individual compute entities and consolidates it at the group level through aggregate progress entries. Compute entities update their individual progress, but only group aggregate entries are updated and read by the monitoring entity. This extraction reduces system load by eliminating redundant read operations while maintaining reliable task status through the aggregate progress information.

Inventive Principle:
Principle #2Taking out (Extraction)

3Loss of time

If a hierarchical structure with aggregate entries is implemented, then reading time is reduced, but the device complexity increases

Engineering Contradiction:
Improveprogress determination timeVSAvoiddata structure complexity
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The patent implements a nested hierarchical structure where individual compute entity progress entries are contained within group aggregate progress entries, which in turn are contained within the overall task progress structure. This nesting allows the monitoring entity to access progress information at different levels of granularity by reading only the necessary aggregate entries, reducing reading time while the structured nesting keeps the complexity manageable through organized data relationships.

Inventive Principle:
Principle #7Nested doll (Nesting)

Data Source

PatentUS12093729B2Distributed task progress report
Publication Date: 2024.09.17 VAST DATA LTD
  • US12093729B2 patent drawing
  • US12093729B2 patent drawing
  • US12093729B2 patent drawing

AI summary

A method for determining a progress of an execution of a task, the method may include accessing only a portion of a shared task status data structure that (a) is associated with the task, wherein the task is executed by a first plurality of compute elements, and (b) comprises multiple hierarchical levels; wherein an entry of a certain hierarchical level represents an aggregate progress associated with multiple entries of the another hierarchical level; the certain hierarchical level is higher than the other hierarchical level; and determining the progress of the execution of the task based on a content of the portion.