Storage Job Workflow Using Dynamic Task Queues and Containers

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing storage service providers face inefficiencies in managing diverse storage service jobs due to the need for specifying different static workflows for various entities, leading to complexity and potential performance impacts.

Innovation Solution

A dynamic workflow system that allows storage service jobs to be performed without predefined sequences, utilizing virtualization containers to dynamically determine task orders and resource allocation based on real-time conditions, with checkpointing and heartbeat signals for resilience.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If static workflows are specified for different storage service jobs, then job execution can be defined, but system complexity increases and performance may be impacted

Engineering Contradiction:
Improveworkflow adaptabilityVSAvoidsystem complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent implements dynamic workflow execution by allowing tasks to be added, removed, or reordered during job execution based on real-time conditions. The workflow is no longer static but adapts to changing requirements, enabling flexible resource allocation and task scheduling without predefined rigid sequences.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system enables self-service workflow management where the storage service job can autonomously determine task sequencing and resource allocation based on its own state and external conditions. The workflow manager dynamically adjusts execution plans without requiring manual reconfiguration for each job type.

Inventive Principle:
Principle #25Self-service

2Adaptability or versatility

If multiple static workflows are maintained for different entities, then specific job requirements can be met, but management becomes cumbersome

Engineering Contradiction:
Improveentity-specific customizationVSAvoidworkflow management ease
Core Design Contradiction:
Adaptability or versatilityVSEase of operation

Solution Approach 1:

The patent creates a universal workflow management framework that can handle multiple entity types and job requirements through a single dynamic system. Instead of maintaining separate static workflows for different entities, the system uses a unified approach that adapts to any entity's specific needs through dynamic task configuration and resource allocation.

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

3Productivity

If predefined task sequences are used, then execution order is controlled, but flexibility to handle varying job types is reduced

Engineering Contradiction:
Improveexecution efficiencyVSAvoidtask sequencing flexibility
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The system dynamically determines task execution sequences based on real-time conditions, data availability, and job requirements. Tasks can be scheduled, paused, or reordered during execution without requiring predefined sequences, enabling the system to optimize productivity for each specific job type while maintaining flexibility.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS12474966B2Dynamically performing a storage service job workflow
Publication Date: 2025.11.18 COHESITY INC
  • US12474966B2 patent drawing
  • US12474966B2 patent drawing
  • US12474966B2 patent drawing

AI summary

An indication of a storage service job to be performed is received. A task to be performed for the storage service job is determined. The task is added to a work queue. Execution of one or more tasks in the work queue that includes the task is dynamically managed. Resources are dynamically allocated to one or more virtualization containers that are assigned to execute the one or more tasks in the work queue. An identification of one or more new tasks to be performed for the storage service job is received from one of the virtualization containers executing the task. The one or more new tasks are added to the work queue.