Query Rewriting System Using Materialized Views

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing data analytics systems face performance issues due to the complexity of queries that ingest large datasets and span multiple MapReduce jobs, making it challenging to efficiently analyze large-scale data and produce actionable insights, especially in knowledge-driven enterprises where data value is unknown and exploratory analysis is iterative.

Innovation Solution

A system that supports evolutionary analytics by rewriting workflows to be more efficient using answers materialized from previous workflow execution runs, integrating a query rewriting component with a query execution engine, and utilizing a gray-box UDF model to optimize query execution through opportunistic materialized views and cost estimation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If queries ingest large datasets and span multiple MapReduce jobs to perform exploratory analysis, then the ability to test hypotheses and refine queries is improved, but query execution time and system resource consumption increase significantly

Engineering Contradiction:
Improveability to test hypotheses and refine queriesVSAvoidquery execution time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The system pre-materializes intermediate query results and stores them in a materialized view store before they are needed. When a query is executed, the system checks for matching materialized views and reuses them directly, avoiding the need to re-execute expensive MapReduce jobs. This preliminary action of materializing results resolves the contradiction by making past computational work available for future queries, thus reducing execution time while maintaining the ability to perform iterative exploratory analysis.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system creates copies of intermediate computation results in the form of materialized views that can be stored and reused. Instead of重新 computing the same data transformations multiple times across different queries, the system copies the results into a persistent store and references them. This copying mechanism allows analysts to iteratively refine queries without incurring the full computational cost of re-processing large datasets, thereby reducing execution time while preserving analytical flexibility.

Inventive Principle:
Principle #26Copying

2Reliability

If MapReduce systems materialize intermediate job results to support fault tolerance, then reliability is improved, but a large set of materialized views is created that consumes significant system resources

Engineering Contradiction:
Improvefault toleranceVSAvoidsystem resources
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The system makes the materialized views serve dual purposes: they provide fault tolerance by preserving intermediate results (original MapReduce function) and simultaneously serve as cached data for optimizing future query executions (new analytical function). By making the materialized views universally useful for both reliability and performance, the system justifies the resource consumption through multiple benefits rather than single-purpose overhead.

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

Solution Approach 2:

The system enables previous query executions to serve future queries automatically through the materialized view store. When new queries are submitted, the system self-optimizes by automatically detecting opportunities to reuse materialized views without requiring manual intervention. This self-service mechanism reduces the effective resource consumption by having the system reuse its own previously computed results, turning resource expenditure into reusable assets.

Inventive Principle:
Principle #25Self-service

3Loss of information

If ETL processes are performed on large, flat, low-structure logs to extract value, then data analysis capability is improved, but the expense and complexity of ETL increase

Engineering Contradiction:
Improvedata value extractionVSAvoidETL process complexity
Core Design Contradiction:
Loss of informationVSDevice complexity

Solution Approach 1:

Instead of performing complex ETL transformations only when needed, the system pre-processes and materializes intermediate results from raw logs during initial query executions. These materialized views contain pre-computed aggregations and transformations that would otherwise require expensive ETL processes. By performing this transformation work preliminarily and storing results, the system reduces the complexity of subsequent analysis operations while maintaining full data value extraction capability.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS9183253B2System for evolutionary analytics
Publication Date: 2015.11.10 NEC CORP
  • US9183253B2 patent drawing
  • US9183253B2 patent drawing
  • US9183253B2 patent drawing

AI summary

A system for evolutionary analytics supports three dimensions (analytical workflows, the users, and the data) by rewriting workflows to be more efficient by using answers materialized as part of previous workflow execution runs in the system.