Subexpression Selection for Datacenter Query Cost Reduction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Shared analytics clusters face significant operational costs due to naive recomputation of the same job subexpressions, leading to resource wastage and inefficiency.

Innovation Solution

A system that selects subexpressions to be materialized based on calculated utility, interactions, and cost, using a bipartite graph labeling approach to determine which subexpressions to use for query evaluation, thereby minimizing query evaluation cost.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If subexpressions are recomputed multiple times for different queries, then query evaluation flexibility is maintained, but cluster resource usage and operational costs increase significantly

Engineering Contradiction:
Improvequery evaluation efficiencyVSAvoidcluster resource usage
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

The system performs preliminary analysis to identify common subexpressions across multiple queries before execution. By pre-computing and materializing these subexpressions in advance, the system avoids redundant computation during query execution, thereby improving productivity while reducing resource waste

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

Materialized subexpressions serve multiple queries simultaneously. A single computed subexpression result is reused across all queries that share it, making the computation universal and eliminating the need for separate computations for each query, thus reducing overall resource consumption

Inventive Principle:
Principle #6Universality (Multi-functionality)

2Productivity

If subexpressions are materialized to reduce computation cost, then query evaluation cost decreases, but storage requirements increase

Engineering Contradiction:
Improvequery evaluation costVSAvoidstorage budget
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The system applies partial materialization by selecting only the most beneficial subexpressions for materialization based on their frequency of use and computational cost. Rather than materializing all possible subexpressions, it chooses a subset that provides the greatest reduction in query evaluation cost within the storage budget constraints

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The system dynamically adjusts materialization decisions based on changing query workloads and patterns. By monitoring query frequencies and computational costs, the system adapts which subexpressions to materialize, optimizing the balance between storage investment and query evaluation savings under varying conditions

Inventive Principle:
Principle #35Parameter changes

3Measurement precision

If all candidate subexpressions are analyzed for materialization, then optimal selection is achieved, but system complexity and computation overhead increase

Engineering Contradiction:
Improvesubexpression selection accuracyVSAvoidselection system complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The system segments the subexpression selection problem into manageable components: identifying candidate subexpressions, analyzing their usage patterns, calculating materialization benefits, and making selection decisions. This segmentation allows the complex problem to be solved through a series of simpler, more tractable steps while maintaining selection accuracy

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS10726014B2Selection of subexpressions to materialize for datacenter scale
Publication Date: 2020.07.28 MICROSOFT TECHNOLOGY LICENSING LLC
  • US10726014B2 patent drawing
  • US10726014B2 patent drawing
  • US10726014B2 patent drawing

AI summary

Described herein is a system and method for selecting subexpressions to be materialized. For a predefined storage budget, subexpressions of a set of candidate subexpressions to be materialized to minimize query evaluation cost are selected based upon a calculated utility of the set of candidate subexpressions, interactions of the candidate subexpressions, and, a cost of evaluating the candidate subexpressions. Based upon the subexpressions selected to be materialized, subexpression(s) of the set of candidate subexpressions to use when evaluating particular queries of the set of queries to minimize query evaluation cost are determined.