Dual Autoscaling With Telemetry-Driven Cluster Resources

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing data systems struggle with inefficient utilization of computing resources due to fixed and static assignments that cannot be easily modified in response to changing demand, leading to suboptimal performance and latency in executing operations on large datasets.

Innovation Solution

Implement a dual autoscaling mechanism comprising a slow autoscaler and a fast autoscaler, where the slow autoscaler adjusts cluster configurations based on historical and predicted workload data stored in a metadata database, while the fast autoscaler reacts quickly to workload changes using real-time telemetry data to make frequent scaling-out decisions, with conflict resolution to manage potential discrepancies.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If computing resources are assigned to execute operations in a cluster group, then operations can be executed using distributed computing power, but the fixed and static assignments prevent easy modification in response to demand changes, leading to inefficient resource utilization

Engineering Contradiction:
Improveoperation execution speedVSAvoidresource assignment flexibility
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The patent implements dynamic resource assignment through autoscaling mechanisms that continuously monitor workload metrics and automatically adjust computing resource allocations. The system transitions from static cluster assignments to dynamic scaling policies where resources are added or removed based on real-time demand, enabling both high productivity and adaptability

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system employs feedback loops where workload metrics (CPU utilization, memory usage, query throughput) are continuously monitored and fed back to the autoscaling controller. This feedback mechanism enables the system to automatically adjust resource assignments in response to changing demand patterns, resolving the contradiction between fixed assignments and flexible adaptation

Inventive Principle:
Principle #23Feedback

2Loss of time

If more computing resources are allocated to execute operations on large datasets, then operation execution time is reduced, but static resource allocation leads to resources remaining assigned to operations that no longer need them, reducing overall utilization efficiency

Engineering Contradiction:
Improveoperation execution timeVSAvoidresource utilization efficiency
Core Design Contradiction:
Loss of timeVSLoss of energy

Solution Approach 1:

The autoscaling system implements periodic monitoring and adjustment cycles where resource allocations are reviewed and modified at regular intervals based on current workload conditions. This periodic action ensures that resources are continuously optimized - added when needed to reduce execution time and removed when no longer necessary to maintain utilization efficiency

Inventive Principle:
Principle #19Periodic action

Solution Approach 2:

The system automatically discards (releases) computing resources from operations that have completed or no longer require them, and recovers these resources for reallocation to new operations. This dynamic discard and recover mechanism prevents resource hoarding and ensures optimal utilization while maintaining the ability to scale up when needed

Inventive Principle:
Principle #34Discarding and recovering

3Device complexity

If a single autoscaler is used to manage cluster configurations, then the system structure is simpler, but it cannot respond quickly enough to sudden workload changes, increasing latency

Engineering Contradiction:
Improveautoscaler architectureVSAvoidresponse time to workload changes
Core Design Contradiction:
Device complexityVSSpeed

Solution Approach 1:

The patent segments the single autoscaler into multiple specialized autoscalers with distinct responsibilities - a slow autoscaler for gradual cluster configuration changes and a fast autoscaler for rapid scaling decisions. This segmentation allows each component to be optimized for its specific function, achieving both architectural simplicity and fast response times

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The fast autoscaler is designed to take partial action by only handling specific scaling scenarios (rapid workload changes) while the slow autoscaler handles other configurations. This partial action approach allows the fast autoscaler to operate with simplified logic for its specific domain, achieving quick response times without requiring complete system redesign

Inventive Principle:
Principle #16Partial or excessive action

4Productivity

If the slow autoscaler adjusts cluster configurations based on historical data, then resource allocation is optimized for long-term trends, but it cannot react quickly to sudden workload changes, increasing latency

Engineering Contradiction:
Improvelong-term resource optimizationVSAvoidresponse latency to sudden changes
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent introduces a temporal dimension to autoscaling by operating two autoscalers with different time scales - the slow autoscaler operates on minute-level intervals for long-term optimization, while the fast autoscaler operates on second-level intervals for immediate responses. This multi-dimensional time approach allows the system to simultaneously optimize for both long-term efficiency and short-term responsiveness

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

Data Source

PatentUS20250278309A1Live metric auto-scaling leveraging telemetry services
Publication Date: 2025.09.04 SNOWFLAKE INC
  • US20250278309A1 patent drawing
  • US20250278309A1 patent drawing
  • US20250278309A1 patent drawing

AI summary

Autoscaling techniques can optimize usage of computing resources in a data system while also quickly reacting to change in workloads. The computing resources are arranged in different clusters. Autoscaling can be partitioned into two separate, independent autoscaling phases: a slow autoscaler and a fast autoscaler.