Predictive Aggregation Logic for Multi-Store Query Optimization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional query processing approaches face performance issues due to the need to move and join large datasets from multiple data warehouses, leading to high computational burdens and slow query execution times, especially when data is distributed across different storage systems.

Innovation Solution

The implementation of predictive aggregation logic that pre-positions data by identifying and moving computationally burdensome fields from one data source to another, creating a virtual schema that optimizes data locality and reduces data movement at query runtime, using a federated execution engine and pre-aggregated materialization logic to facilitate efficient query processing.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If data is distributed across multiple data warehouses, then data storage capacity and flexibility are improved, but query execution time and computational burden increase

Engineering Contradiction:
Improvedata storage capacityVSAvoidquery execution time
Core Design Contradiction:
Quantity of substanceVSLoss of time

Solution Approach 1:

The system performs preliminary actions by pre-positioning data during idle periods before queries are executed. The predictive aggregation logic identifies fields that will be needed for future queries and moves them to appropriate data sources in advance, so that when queries are executed, the data is already in place and no runtime data movement is required.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The query optimization layer acts as an intermediary between the user and the distributed data warehouses. It receives queries, analyzes them to identify fields requiring data movement, determines optimal data sources, and coordinates the pre-positioning of data across the distributed system, thereby managing the complexity of multi-warehouse queries transparently.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If data is moved and joined from multiple data warehouses, then query completeness is improved, but computational burden and resource consumption increase

Engineering Contradiction:
Improvequery completenessVSAvoidcomputational burden
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The system extracts only the specific fields that are needed for query execution from the distributed data warehouses, rather than moving entire datasets. The predictive aggregation logic identifies and extracts only those fields that will be accessed, leaving unnecessary data in place and minimizing computational overhead for data movement and joining operations.

Inventive Principle:
Principle #2Taking out (Extraction)

3Productivity

If data is pre-positioned across multiple data sources, then query performance is improved, but data movement overhead increases

Engineering Contradiction:
Improvequery performanceVSAvoiddata movement overhead
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

The system applies partial action by pre-positioning only the specific fields that are predicted to be needed for future queries, rather than pre-positioning entire tables or datasets. This selective approach reduces the overhead of data movement while still achieving the performance benefits of having data pre-positioned at the appropriate data sources.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS11899665B2Data aggregation and pre-positioning for multi-store queries
Publication Date: 2024.02.13 ATSCALE INC
  • US11899665B2 patent drawing
  • US11899665B2 patent drawing
  • US11899665B2 patent drawing

AI summary

A query engine or compute engine receiving a query request identifies a plurality of data sources for satisfying a query request, and determines, from among multiple data sources, one or more fields likely to incur substantial computational demands in processing the query request. Pre-positioning aggregation logic moves the determined fields one data source to another data source for positioning the moved fields to a single data source from which the query result will be computed.