Database Task Scheduler with Dynamic Resource Allocation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing database systems face challenges in efficiently scheduling tasks, such as SQL statements, for automatic execution in response to trigger events, which can lead to inefficiencies and increased resource utilization.

Innovation Solution

The implementation of a cloud database system with a compute service manager that coordinates task execution, an execution platform with virtual warehouses, and a warehouse scheduling component that schedules jobs and transactions, allowing for dynamic resource allocation and efficient task scheduling.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If traditional scheduling methods are used for database tasks, then system simplicity is maintained, but scheduling efficiency and resource utilization deteriorate

Engineering Contradiction:
Improvescheduling efficiencyVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system divides the scheduling function into separate components: a task scheduler for managing task execution and a compute service manager for coordinating resources. This segmentation allows each component to specialize in specific scheduling aspects, improving overall scheduling efficiency while maintaining manageable system complexity through modular design.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

A compute service manager is introduced as an intermediary between the task scheduler and the execution platform. This intermediary coordinates task execution, manages resource allocation, and bridges the gap between scheduling decisions and actual task performance, thereby improving scheduling efficiency without directly increasing the complexity of core scheduling algorithms.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If dynamic resource allocation is implemented, then system scalability improves, but resource overhead increases

Engineering Contradiction:
Improvesystem scalabilityVSAvoidresource overhead
Core Design Contradiction:
Adaptability or versatilityVSUse of energy by moving object

Solution Approach 1:

The system implements dynamic resource allocation where the task scheduler and compute service manager can adjust resource allocation in real-time based on current workload demands. Virtual warehouses can be dynamically created, scaled, or terminated, allowing the system to adapt to changing requirements while optimizing resource utilization to minimize overhead.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes operational parameters dynamically, such as adjusting the number of virtual warehouses, modifying resource allocation ratios, and tuning scheduling priorities based on system state. These parameter changes enable scalability while allowing the system to optimize resource usage and reduce overhead under different operating conditions.

Inventive Principle:
Principle #35Parameter changes

3Extent of automation

If manual task scheduling is used, then control precision is maintained, but time consumption and automation level deteriorate

Engineering Contradiction:
Improveautomatic task executionVSAvoidscheduling time
Core Design Contradiction:
Extent of automationVSLoss of time

Solution Approach 1:

The task scheduler performs preliminary actions by pre-processing task definitions, establishing execution priorities, and preparing resource allocation plans before actual task execution. This preliminary automation reduces the time required during actual task scheduling and execution, while maintaining precise control over task priorities and resource allocation.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The compute service manager implements feedback mechanisms by monitoring task execution status, resource utilization, and system performance in real-time. This feedback enables automatic adjustments to scheduling decisions and resource allocation, reducing manual intervention time while maintaining precise control over task execution and optimizing automation efficiency.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS12242496B2Future scheduler for database systems
Publication Date: 2025.03.04 SNOWFLAKE INC
  • US12242496B2 patent drawing
  • US12242496B2 patent drawing
  • US12242496B2 patent drawing

AI summary

The subject technology receives a query, the query comprising a set of query statements. The subject technology determines that a set of resources to be utilized by the query during execution is provided by a slot, the slot comprising an allocation of resources provided by a virtual warehouse. The subject technology performs a first scheduling process for execution of the query using the slot. The subject technology determines that an available slot is provided by the virtual warehouse. The subject technology executes, using the virtual warehouse, the query using the available slot.