Batch Data Query Optimization via Static Dependency Analysis

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current big-data query systems face inefficiencies in query optimization due to the conventional use of single query statements, which limits optimization opportunities and requires dynamic data dependency analysis, making it inefficient for batch query scenarios.

Innovation Solution

A batch data query method that determines symbol identifiers and dependencies among multiple query statements based on operators and operands, allowing for inter-query optimization using preset rules, thereby improving optimization efficiency and reducing overheads.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If single query statement is used as basic unit for parsing and optimization, then query processing is simple, but optimization opportunities are insufficient

Engineering Contradiction:
Improvequery efficiencyVSAvoidoptimization opportunities
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The patent merges multiple query statements into a batch query group, treating them as a unified optimization unit. The query optimization module analyzes dependencies among multiple queries and performs joint optimization, combining previously separate optimization opportunities into a coordinated process that improves overall query efficiency while enabling inter-query optimizations.

Inventive Principle:
Principle #5Merging (Combining)

2Adaptability or versatility

If dynamic data dependency analysis is performed through monitoring and feedback, then query optimization can be adaptive, but system overhead increases

Engineering Contradiction:
Improvequery optimization adaptabilityVSAvoidsystem overhead
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent performs preliminary dependency analysis by collecting static dependency information during query compilation and parsing phases. By pre-analyzing data record access patterns, table relationships, and potential conflicts before query execution, the system establishes optimization strategies in advance, reducing the need for complex real-time monitoring and feedback mechanisms during runtime.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent creates dependency relationship models and query execution plans that replicate the actual query execution flow. These models capture data dependencies, conflict relationships, and optimization opportunities without requiring continuous monitoring of the actual execution. The copied dependency information is then used to guide optimization decisions, reducing overhead from real-time monitoring.

Inventive Principle:
Principle #26Copying

3Productivity

If dynamic optimization is executed based on monitored data dependencies, then query performance can be improved, but optimization can only be applied to specific inputs

Engineering Contradiction:
Improvequery performanceVSAvoidinput generality
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The patent develops a universal query optimization framework that analyzes dependency relationships in a general manner applicable to multiple query inputs. By identifying patterns in data access, table relationships, and conflict scenarios that transcend specific input data, the system creates optimization strategies that can be reused across different query batches. The dependency analysis module captures structural relationships rather than input-specific characteristics, enabling the same optimization logic to apply universally.

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

Data Source

PatentUS10678789B2Batch data query method and apparatus
Publication Date: 2020.06.09 HUAWEI TECH CO LTD
  • US10678789B2 patent drawing
  • US10678789B2 patent drawing

AI summary

A batch data query method and apparatus are provided. A data query server determines symbol identifiers of operands in N query statements according to operators and the operands in the N query statements, where the symbol identifiers include version numbers of the operands; determines dependency among the N query statements according to the version numbers of the operands in the N query statements; and then, performs inter-query optimization on the N query statements according to the dependency among the N query statements and a preset optimization rule.