Virtual Warehouse Caching for Scalable Query Redistribution

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing data storage and retrieval systems face scalability issues due to bottlenecks in shared-disk systems and data rearrangement challenges in shared-nothing architectures, leading to performance disruptions and management complexity.

Innovation Solution

A decoupled data storage and computing resource architecture that allows dynamic addition and removal of nodes without data rearrangement, utilizing cloud-based resources and a resource manager to optimize data access and caching, ensuring continuous availability and scalability.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a shared-disk system is used where all data is stored on a shared storage device accessible from all processing nodes, then data consistency is ensured, but the shared storage device and communication links become a bottleneck that slows data read and write operations as the number of processing nodes increases

Engineering Contradiction:
Improvedata consistencyVSAvoiddata read and write speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments the centralized shared storage into distributed storage across multiple nodes. Each processing node has its own local storage device, eliminating the single shared storage bottleneck. Data is distributed across nodes rather than concentrated on one shared device, allowing parallel data access without creating a central bottleneck.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a data manager as an intermediary component that coordinates data access between processing nodes and storage devices. The data manager handles data allocation, retrieval, and consistency management, allowing nodes to access data efficiently without direct competition for a shared storage device, thus resolving the bottleneck issue while maintaining consistency.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If a shared-nothing architecture is used where data is distributed across multiple processing nodes, then scalability is improved, but data rearrangement becomes time-consuming and disruptive when new nodes are added or removed

Engineering Contradiction:
ImprovescalabilityVSAvoiddata rearrangement time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The patent implements a dynamic data management system where the data manager can dynamically allocate and deallocate data to nodes based on current system configuration. When nodes are added or removed, the data manager dynamically adjusts data distribution without requiring complete rearrangement, enabling flexible scaling while minimizing disruption and time loss.

Inventive Principle:
Principle #15Dynamics

3Adaptability or versatility

If a shared-nothing architecture is used where each processing node performs storage function, then data distribution is achieved, but the affinity of data to a particular node creates hot spots on the data cluster for popular data

Engineering Contradiction:
Improvedata distributionVSAvoidhot spots on data cluster
Core Design Contradiction:
Adaptability or versatilityVSStress or pressure

Solution Approach 1:

The patent incorporates feedback mechanisms where the data manager monitors data access patterns and node performance. Based on this feedback, the system dynamically adjusts data distribution to balance access patterns across nodes, preventing hot spots by redistributing popular data to nodes with lower current load, thus maintaining even data distribution while adapting to changing access patterns.

Inventive Principle:
Principle #23Feedback

4Adaptability or versatility

If a shared-nothing architecture is used where each processing node stores data, then data distribution is achieved, but management of data becomes complex due to distribution across many different processing nodes

Engineering Contradiction:
Improvedata distributionVSAvoiddata management complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent introduces a data manager as a centralized intermediary that handles all data management operations. This single component coordinates data distribution, allocation, and access across all nodes, simplifying the complex task of managing distributed data. The data manager abstracts the complexity from individual nodes, allowing them to focus on processing while the data manager handles distribution management centrally.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS12625881B2Caching systems and methods
Publication Date: 2026.05.12 SNOWFLAKE INC
  • US12625881B2 patent drawing
  • US12625881B2 patent drawing
  • US12625881B2 patent drawing

AI summary

Example caching systems and methods are described. In one implementation, a method receives a set of queries to be processed by a set of virtual warehouses. The method distributes the set of queries to the set of virtual warehouses to be executed and creates, during the processing of the set of queries by the set of virtual warehouses, a new virtual warehouse, wherein cache resources associated with the new virtual warehouse are populated with data files associated with the set of queries at the time the virtual warehouse is created and the cache resources vary among the processors, wherein a first subset of the processors comprises minimal cache resources and a second subset of processors comprises cache resources providing faster input-output operations. The method redistributes the set of queries across the set of virtual warehouses.