Tiered Queue Allocation for Distributed Job Prioritization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional relational databases are inadequate for handling large volumes of big data, leading to inefficient job execution and resource allocation in distributed file systems, as jobs are often assigned based on initial configuration settings without considering complexity or resource needs.

Innovation Solution

A system that divides job requests into stages based on metadata, assigns stage weights, and allocates each stage to a job queue based on resource availability and infrastructure capability, enabling intelligent prioritization and resource distribution across queues.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If jobs are assigned to queues based on initial configuration settings, then the system is simple to operate, but resource allocation efficiency deteriorates because job complexity and resource needs are not considered

Engineering Contradiction:
Improvejob assignment simplicityVSAvoidresource allocation efficiency
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The system segments jobs into multiple stages based on job metadata, allowing each stage to be independently analyzed and allocated to appropriate queues. This segmentation enables the system to consider job complexity and resource requirements without requiring manual configuration of entire jobs, thus maintaining operational simplicity while improving allocation efficiency.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system dynamically determines stage weights and allocates job stages to queues based on real-time infrastructure capability and job characteristics rather than static initial configuration. This dynamic approach allows the system to adapt to varying job complexities and resource needs, improving resource allocation efficiency while the automated nature maintains ease of operation.

Inventive Principle:
Principle #15Dynamics

2Device complexity

If all jobs are assigned to a single queue, then queue management is simple, but processing time increases because jobs execute sequentially regardless of complexity

Engineering Contradiction:
Improvequeue management complexityVSAvoidjob processing time
Core Design Contradiction:
Device complexityVSLoss of time

Solution Approach 1:

Jobs are divided into multiple executable stages that can be independently scheduled across different queues. This segmentation enables parallel execution of job stages while keeping queue management relatively simple, as each queue handles specific stages based on their resource requirements and current capability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system introduces a new dimension of job stage allocation across multiple queues rather than managing all jobs within a single queue. This dimensional change allows parallel processing of job stages across different queues, reducing processing time while distributing management complexity across the queue infrastructure.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

3Adaptability or versatility

If fair share methodology is used to assign queue resources equally, then resource distribution appears fair, but processing efficiency deteriorates because all jobs receive equal resources regardless of complexity

Engineering Contradiction:
Improveresource distribution fairnessVSAvoidjob execution efficiency
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The system applies different resource allocation weights to different job stages based on their specific requirements and characteristics. Instead of uniform fair share allocation, each job stage receives resources proportional to its complexity and needs, improving execution efficiency while maintaining fairness through transparent weight-based allocation.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The system changes the allocation parameter from equal resource distribution to weighted resource distribution based on stage weights. This parameter change allows the system to maintain fairness through configurable weights while significantly improving execution efficiency by allocating more resources to complex stages and fewer to simple stages.

Inventive Principle:
Principle #35Parameter changes

4Productivity

If job stages are assigned based on stage weight and infrastructure capability, then resource allocation efficiency improves, but system complexity increases due to monitoring and determination requirements

Engineering Contradiction:
Improveresource allocation efficiencyVSAvoidsystem monitoring complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system automatically monitors infrastructure capability and job stage execution, determining stage weights and queue allocations without manual intervention. This self-service approach improves resource allocation efficiency while minimizing the operational complexity burden on users, as the system performs monitoring and optimization autonomously.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system implements continuous monitoring of job stage execution and infrastructure capability, using this feedback to dynamically adjust stage weights and queue allocations. This feedback mechanism improves resource allocation efficiency by adapting to real-time conditions, while the automated feedback loop manages system complexity without requiring manual monitoring procedures.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS10713090B2Context aware prioritization in a distributed environment using tiered queue allocation
Publication Date: 2020.07.14 AMERICAN EXPRESS TRAVEL RELATED SERVICES CO INC
  • US10713090B2 patent drawing
  • US10713090B2 patent drawing
  • US10713090B2 patent drawing

AI summary

Systems and methods for allocating jobs in a distributed file system queue are provided. The system may receive a job request and intelligently divide the job request into one or more logical job stages. Each job stage may be assigned a stage weight based on historical data corresponding to each job stage, such as job stage computing requirements, job stage data outputs, and the like. The system may assign each job stage to a job queue n the distributed file system based on the stage weight and the current computing availability of each job queue. The system may execute each job stage in the assigned job queue to complete the job request.